A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 孙百鑫 于 2013-3-17 14:00 编辑

class FuShuException extends Exception//自定义对象
{
        private String msg;
        FuShuExcetion(String mag)
        {
                this.msg=msg;
        }
        public String getMessage()
        {
                return msg;
        }
}

class Demo
{
        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)
        {
                Demo d=new Demo();
                        try
                        {
                                int x=d.div(4,-2);
                        System.out.println("x="+x);
                        }
                        catch (FuShuException e)
                        {
                                System.out.println(e.toString());
                                System.out.println("除数为负数啦!!!");
                        }
                        
        
                System.out.println("over");
        }
}

点评

 最好把重点的地方给别人展示出来,而且写长篇的代码最忌讳没注释,就像文章没标点一样。当你把注释写出来了以后,你就会发现,你的问题了。  发表于 2013-3-17 13:56

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

6 个回复

倒序浏览
  1. class FuShuException extends Exception //getMessage();
  2. {
  3.         private int value;

  4.         FuShuException()
  5.         {
  6.                 super();
  7.         }
  8.         FuShuException(String msg,int value)
  9.         {
  10.                 super(msg);
  11.                 this.value = value;
  12.         }

  13.         public int getValue()
  14.         {
  15.                 return value;
  16.         }

  17. }



  18. class Demo
  19. {
  20.         int div(int a,int b)throws FuShuException
  21.         {
  22.                 if(b<0)
  23.                         throw new FuShuException("出现了除数是负数的情况------ / by fushu",b);//手动通过throw关键字抛出一个自定义异常对象。

  24.                 return a/b;
  25.         }
  26. }


  27. class  ExceptionDemo3
  28. {
  29.         public static void main(String[] args)
  30.         {
  31.                 Demo d = new Demo();
  32.                 try
  33.                 {
  34.                         int x = d.div(4,-9);
  35.                         System.out.println("x="+x);               
  36.                 }
  37.                 catch (FuShuException e)
  38.                 {
  39.                         System.out.println(e.toString());
  40.                         //System.out.println("除数出现负数了");
  41.                         System.out.println("错误的负数是:"+e.getValue());
  42.                 }
  43.                
  44.                

  45.                 System.out.println("over");

  46.         }
  47. }

  48. /*
  49. class Throwable
  50. {
  51.         private String message;
  52.         Throwable(String message)
  53.         {
  54.                 this.message = message;
  55.         }

  56.         public String getMessage()
  57.         {
  58.                 return message;
  59.         }
  60. }

  61. class Exception extends Throwable
  62. {
  63.         Exception(String message)
  64.         {
  65.                 super(message);
  66.         }
  67. }


  68. class Person
  69. {
  70.         String name;
  71.         Person(String name)
  72.         {
  73.                 this.name = name;
  74.         }
  75.         public String getName()
  76.         {
  77.                 return name;
  78.                 }
  79. }

  80. class Student extends Person
  81. {
  82.         Student (String name)
  83.         {
  84.                 super(name);
  85.         }
  86. }

  87. new Sttdent("lisi").getName();

  88. */
复制代码
希望能帮到

点评

最好把重点的地方给别人展示出来,而且写长篇的代码最忌讳没注释,就像文章没标点一样。  发表于 2013-3-17 13:55

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 黄玉昆 于 2013-3-17 13:59 编辑

FuShuExcetion(String mag)
        {
                super(mag);
                this.mag=mag;
        }

你既然要继承父类,当然要初始化父类的成员了。
回复 使用道具 举报
还是构造函数的名字写错了
见代码

  1. class FuShuException extends Exception//自定义对象
  2. {
  3.         private String msg;
  4.                 FuShuException(String mag)                                //                FuShuExcetion(String mag)        //构造函数的名字写错了,
  5.         {
  6.                 this.msg=msg;
  7.         }
  8.         public String getMessage()
  9.         {
  10.                 return msg;
  11.         }
  12. }

  13. class Demo
  14. {
  15.         int div(int a,int b)throws FuShuException//在功能上通过throws的关键字声明了该功能有可能会出现问题。
  16.         {
  17.                 if(b<0)
  18.                         throw new FuShuException("出现了除数是负数的情况");//手动让throw关键字抛出对象。

  19.                 return a/b;
  20.         }
  21. }


  22. class  ExceptionDemo3
  23. {
  24.         public static void main(String[] args)
  25.         {
  26.                 Demo d=new Demo();
  27.                         try
  28.                         {
  29.                                 int x=d.div(4,-2);
  30.                         System.out.println("x="+x);
  31.                         }
  32.                         catch (FuShuException e)
  33.                         {
  34.                                 System.out.println(e.toString());
  35.                                 System.out.println("除数为负数啦!!!");
  36.                         }
  37.                         
  38.         
  39.                 System.out.println("over");
  40.         }
  41. }
复制代码
回复 使用道具 举报
FuShuExcetion(String mag)
         {
                 this.msg=msg;
         }

单词写错了{:soso_e127:}FuShuException

回复 使用道具 举报
真是有够蛋疼,,,,,错误原因也不贴上来,,,,构造方法上少写一个字母,,,, FuShuExcetion(String mag)这个地方,少些了,跟类名不一样。
回复 使用道具 举报
这都什么资质啊,,,,,
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马