本帖最后由 何仕映 于 2013-3-17 13:14 编辑
你写的这个程序有两个问题导致编译失败:
1、Dmeo d=new Demo();在建立对象的时候把类名写错了,你定义的是Dmeo 却写成了Demo
2、对于int x = d.div(4,1)这一句是可能出现异常的,需要处理,有两种处理方式:
1、在主函数上抛出2、利用try。。catch处理异常。我这里用的是第二种。
如果楼主编译通过了,要么是改变程序后没有保存编译,要么是运行了其他文件,请检查一下运行的文件名
详细见一下代码
- class FuShuException extends Exception//自定义对象
- {
- }
- class Dmeo
- {
- int div(int a,int b)throws FuShuException//在功能上通过throws的关键字声明了该功能有可能会出现问题。
- {
- if(b<0)
- throw new FuShuException();//手动让throw关键字抛出对象。
- return a/b;
- }
- }
- class ExceptionDemo3
- {
- public static void main(String[] args)
- {
- //Dmeo d=new Demo();在建立对象的时候把类名写错了,你定义的是Dmeo 却写成了Demo
- Dmeo d = new Dmeo();
- try //对于int x = d.div(4,1)这一句是可能出现异常的,有两种处理方式:
- //1、在主函数上抛出2、利用try。。catch处理异常。我这里用的是第二种
- {
- int x=d.div(4,1);
- System.out.println("x="+x);
- }
- catch (FuShuException e)
- {
- System.out.println("出现负数了");
- }
-
- System.out.println("over");
- }
- }
复制代码 |