package Test;

abstract public class A { abstract public void f();//没有方法体的方法叫做抽象方法,抽象方法前面必须加上abstract

}

public class B extends A { public void f() { System.out.printf("BBB\n"); }

} public class Test {

public static void main(String[] args) {

// A aa=new A();//ERROR B bb=new B(); bb.f(); A aa;//ok 可以定义一个抽象类的引用,但是不可以定义一个抽象类的对象 aa=bb; aa.f(); }

}