我学习自定义例外时遇到这样的问题,书上的代码如下:
1  class WeightException extends BodyException
2  {
3    WeightException()
4    {
5      super("身高例外");
6    }  
7    WeightException(int weight,int weightest,String message)
8    {
9      super(message);
10     this.weight=weight;
11   }
12   public boolean over()
13   {
14     if (weight>weightest) return (true);
15     else return (false);
16   }
17 }
编译后的结果是over()函数的weightest通不过,weight在这个例外类的父类声明过。
请问这里该怎么写。谢谢。

解决方案 »

  1.   

    weightest在父类有声明过吗? 是private吗? 应该设get, set
      

  2.   

    你的 if (weight>weightest) return (true); 中的 weightest 是从哪来的,好像没有!还有 Exception 在 Java 中称为“异常”,一般不称为“例外”。
      

  3.   

    weightest在父类中没有设过,这段代码是书上抄来的,我觉得有问题,所以到这儿来问问。
    可能是作者把int weightest当成了weightest的声明。
    如果要实现over函数,应该怎么写?怎么把第二个构造函数的weightest引用到over函数里。
    谢谢。
      

  4.   

    要定义weightest呀 class WeightException extends BodyException
    {
      private int weightest;...
    ...
    ...
    }