public class TEST { public static void main(String[] args) { B b = new B(); b.fun1(); }}abstract class A { String str = ""; public A() { this.str = "A"; } abstract void fun1(); void fun2() { System.out.println(this.str); } }class B extends A { String str = "B"; void fun1() { super.fun2(); System.out.println(this.str); } } //输出结果 A B
如果能new出对象还能是抽象类吗?
除了不能用来直接创建实例之外
跟普通的构造函数是一样的
也就是继承它的类可以通过super调用
但就是不能显式构造
public class TEST { public static void main(String[] args) { B b = new B();
b.fun1();
}}abstract class A {
String str = ""; public A() {
this.str = "A";
} abstract void fun1(); void fun2() {
System.out.println(this.str);
}
}class B extends A {
String str = "B"; void fun1() {
super.fun2();
System.out.println(this.str);
}
}
//输出结果
A
B
例如:AbstractList
查一下就知道了。