Java 求大神们解答:自定义异常,处理异常

Java 求大神们解答:自定义异常,处理异常,第1张

以下是一个符合您要求的Java程序示例:

javaCopy codeclass MyException extends Exception {public MyException() {super()

}public MyException(String message) {super(message)

}

}class UsingMyException {public void f() throws MyException {

System.out.println("抛出异常MyException 从 f()方法") throw new MyException()

}public void g() throws MyException {

System.out.println("抛出异常MyException 从 g()方法") throw new MyException("从g()方法中抛出异常")

}

}public class TestException {public static void main(String[] args) {UsingMyException obj = new UsingMyException() try {

obj.f()

} catch (MyException e) {

System.out.println(e.getMessage())

}try {

obj.g()

} catch (MyException e) {

System.out.println(e.getMessage())

} finally {

System.out.println("最终结束")

}

}

}

在这个程序中,我们首先定义了一个MyException类,它继承自Exception类,并具有无参和一个字符串参数的构造函数。接下来,我们定义了一个普通类UsingMyException,并在其中定义了两个方法f()和g(),这两个方法都抛出MyException异常并输出相应的信息。最后,我们编写了一个测试类TestException,在其中调用了UsingMyException类的f()和g()方法,并使用try-catch语句捕获了抛出的异常,并输出相应的信息。我们还使用了finally关键字来确保在程序结束时执行某些特定的代码。

当您运行这个程序时,它将在控制台上输出符合您要求的内容。

public class NoOprandException{

String a

String b

public NoOprandException(String a,String b){

this.a=a

this.b=b

}

public String errorException(){

if((a==null&&a.equals(""))&&(b==null&&b.equals(""))){

return "NoOprand错误!"

}

return

}

}

public class OnlyOneException{

String a

String b

public OnlyOneException(String a,String b){

this.a=a

this.b=b

}

public String errorException(){

if((a==null&&a.equals(""))||(b==null&&b.equals(""))){

return "OnlyOne错误!"

}

return

}

}

public class a{

public static void main(String[] args){

Scanner scan1=new Scanner(System.in)

Scanner scan2=new Scanner(System.in)

String line1=scan1.nextLine()

String line2=scan2.nextLine()

try{

throw new OnlyOneException(line1,line2)

}catch(OnlyOneException e){

System.out.print(e)

System.out.exit(0)

}

try{

throw new NoOprandException(line1,line2)

}catch(NoOprandException e){

System.out.print(e)

System.out.exit(0)

}

}

}

自定义异常类型是从Exception类中派生的,所以要使用下面的声明语句来创建:

<class><自定义异常名><extends><Exception>{...}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11411792.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存