日期:2014-05-20  浏览次数:20650 次

Java基础,抽象类继承
public class B1 extends A {  
  
    @Override  
    void a() {  
        System.out.println();  
    }  

  public static void main(String[] args){
    
B1 ss = new B1();
B1.b();
  
  }
}  
abstract class A {  
    int a=0;
  
    abstract void a();  
    void b(){ 
a++;
     System.out.println(a);
          
    }  
}

这个那里错了~
Java基础

------解决方案--------------------
B1.b();改成 ss.b();
应为b()不是静态方法。。。
------解决方案--------------------
你这代码 没有问题  就是 马虎问题,   我想既然你正在学习抽象类那么基本的语法我也不多说了,    B1.b();    你的B1是什么  你要搞清楚,它是一个对象不是一个引用。你需要用 引用去调相应的方法
------解决方案--------------------
B1.b();改成 ss.b();,用引用调用方法,对象调的是静态方法
------解决方案--------------------
看了LS们的中文描述,再看看你编译时的英文描述,应该会印象深些~