您好,欢迎访问三七文档
当前位置:首页 > 财经/贸易 > 资产评估/会计 > JAVA课后作业第7章
7-1编写一个异常类MyException,再编写一个类Student,该类有一个产生异常的方法speak(intm)。要求参数m的值大于1000时,方法抛出一个MyException对象。最后编写主类,在主方法中创建Student对象,让该对象调用speak()方法。publicclassMyExceptionextendsException{Stringmessage;MyException(intm){message=数+m+超过了1000;}publicStringtoString(){returnmessage;}}publicclassStudent{publicvoidspeak(intm)throwsMyException{if(m1000){MyExceptionex=newMyException(m);throwex;}else{System.out.println(输入的数是:+m);}}}importjava.util.Scanner;publicclassTest{publicstaticvoidmain(String[]args){Students=newStudent();try{System.out.println(请输入一个数:);Scannersca=newScanner(System.in);s.speak(sca.nextInt());}catch(MyExceptione){System.out.print(e.toString());}}}7-2创建类Number,通过类中的方法count可得到任意两个数相乘的结果,并在调用该方法的主方法中使用try-catch语句捕捉可能发生的异常。publicclassNumber{intsum=0;publicintcount(intx,inty){returnx*y;}}publicstaticvoidmain(String[]args){Numbernu=newNumber();inta=30;intb=18;intsum=0;try{sum=nu.count(a,b);System.out.print(两个数的乘积是:+sum);}catch(Exceptione){e.printStackTrace();}}7-3创建类Computer,该类中有一个计算两个数的最大公约数的方法,如果向该方法传递负整数,该方法就会抛出自定义异常。publicclassMyExceptionextendsException{Stringmessage;MyException(){message=输入的数不能为负数;}publicStringtoString(){returnmessage;}publicclassStudent{publicstaticintmaxCommonDivsor(inta,intb){if(ab){inttemp=a;a=b;b=temp;}while(a%b!=0){inttemp=a%b;a=b;b=temp;}returnb;}publicintspeak(intm,intn)throwsMyException{if(m0){MyExceptionex=newMyException();throwex;}elseif(n0){MyExceptionex=newMyException();throwex;}else{returnmaxCommonDivsor(m,n);}}}importjava.util.Scanner;publicclassTest1{publicstaticvoidmain(String[]args){System.out.print(请输入第一个数:);Scannersca=newScanner(System.in);intx=sca.nextInt();System.out.print(请输入第二个数:);Scannersca1=newScanner(System.in);inty=sca.nextInt();try{Studentstu=newStudent();stu.speak(x,y);}catch(MyExceptione){System.out.print(e.toString());}}}7-4如何捕获异常?使用try-catch语句捕获异常7-5简述异常处理的注意事项。(1)在当前方法声明中使用try-catch语句捕获异常。(2)一个方法被覆盖时,覆盖它的方法必须抛出相同的异常或异常的子类。(3)如果父类抛出多个异常,则覆盖方法必须抛出那些异常的一个子集,不能抛出新异常。
本文标题:JAVA课后作业第7章
链接地址:https://www.777doc.com/doc-5427986 .html