如何用Java程序来编写一个异常?

如何用Java程序来编写一个异常?,第1张

class

MyException

extends

Exception

//自定义异常

继承Exception类

{

private

String

exceptionName

//定义一个私有变量,用来为自定义异常

public

MyException(){}

//创建一个无参数的构造函数

public

MyException(String

exceptionName){

//创建一个有参数的构造函数,传入的参数为前面定义的异常名称

this.exceptionName=exceptionName

}

public

String

getExceptionName(){

//定义一个方法,提供给外部来获取私有变量

return

this.exceptionName

}

public

static

void

main(String

[]

args){

try{

System.out.println("自定义的异常类对象")

throw

new

MyException("自定义的异常")//抛一个自定义的异常类对象,传入的参数就是给控制台看的异常

}catch(MyException

e){

System.out.println("异常信息:"+e.getExceptionName())

}

}

}

我已经尽力你……你懂的!

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)

}

}

}

你好,按照你的要求代码如下,你运行时,可以选择性的注释,比如要看到第二个异常,就要把第一段会抛出异常的代码注释掉就行了,看第三个异常同理

public class A {

public static void main(String[] args) {

try {

System.out.println(1 / 0)//会抛出ArithmeticException

System.out.println(new int[] {}[0])//会抛出ArrayIndexOutOfBoundsException

String str = null

System.out.println(str.toString())//会抛出NullPointerException

} catch (ArithmeticException e) {

System.out.println("算术异常")

} catch (ArrayIndexOutOfBoundsException e) {

System.out.println("数组下标越界异常")

} catch (NullPointerException e) {

System.out.println("空指针异常")

}

}

}


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

原文地址: http://outofmemory.cn/yw/11055885.html

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

发表评论

登录后才能评论

评论列表(0条)

保存