/*为什么会出现如下情况,请问如何解决,谢谢:
interfaceDemo.java:27:方法声明无效;需要返回类型
        public getUalue(double num){
}*/
interface one{
double A=30.0;
void add(int n);
void subtract(int n);
double getValue();
void setValue(int n);
}
public class Herihacy implemeints Child{
    public Herihacy(){}
    public double getValue1(){
        return 

 class class1 implements one{
double num=50.0;
public void add(int n){
num+=n;
}
public void subtract(int n){
num-=n;
}
public void setValue(int n){
num=1;
for(int i=1;i<=n;i++){
num*=i;

}
}
public getValue(){
return num;
}
}class class2 implements one{
double num=20;
public void add(int n){
num+=(n+1)*n/2;
}
public void subtract(int n){
num-=(n+1)*n/2;
}
public void setValue(int n){
num=1;
for(int i=1;i<=n;i++){
num*=i;

}
}
public getValue(){
return num;
}
}
public class interfaceDemo { public static void main(String[] args) {
double i;
one aObj=new class1();
i=aObj.getValue();
System.out.println("The original in class1 is :"+i);
if(i<aObj.A){
aObj.add(30);
i=aObj.getValue();
System.out.println("After call add method is:"+i);

}else{
aObj.subtract(30);
i=aObj.getValue();
System.out.println("After call subtract method is:"+i);

}
aObj=new class2();
i=aObj.getValue();
System.out.println("The original in class2 is :"+i);
if(i<aObj.A){
aObj.add(30);
i=aObj.getValue();
System.out.println("After call add method is:"+i);

}else{
aObj.subtract(30);
i=aObj.getValue();
System.out.println("After call subtract method is:"+i);

} }}

解决方案 »

  1.   

    public dobule getValue(){
    return num;
    }
    不是提示你了么!方法声明无效;需要返回类型
      

  2.   

    public getValue(){
    return num;
    }
    改为:
    public double getValue(){
    return num;
    }
      

  3.   

    给那个方法一个double的返回值就可以了……
      

  4.   

    interface one里不能写成:
        public double getValue(){
            return num;
             }
    会出现错误,并且改了后还是遇到同样的问题。不好意思上面程序:
    public class Herihacy implemeints Child{
      public Herihacy(){}
      public double getValue1(){
      return
    是多余的。