package com.test;
public class Test {
public static void main(String[] args) {
//问x打印出几? 答案:打印出0
//在new B()初始化的过程中,子类的成员x
//但是:还是会将方法动态绑定到子类的print()
A a = new B(10); }
}
abstract class A {
public A() {
this.print();
}
public abstract void print();
}
class B extends A {
private int x = 100;
public B(int x) {
this.x = x;
}
@Override
public void print() {
System.out.println(x);
}
}