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