public abstract class AbstractParent {
public AbstractParent() {
System.out.println("Hello,parent");
} protected void earnMoney() {
prepare();
doJob();
} protected abstract void doJob(); private void prepare() {
System.out.println("parent prepare");
}
} class Child extends AbstractParent {
public Child() {
System.out.println("Child init");
} @Override
protected void doJob() {
System.out.println("Child do job");
} public static void main(String[] args) {
Child child = new Child();
child.earnMoney();
}
}
输出:
Hello,parent
Child init
parent prepare
Child do job