模板方法
定义:定义一个通用的模板类,保证核心方法不变,合理使用abstruct和final关键字,定义好大概框架,来规范子类。abstruct修饰的方法,表示需要子类自己继承且重写的。final修饰的方法,表示不允许子类重写。
例:
父类:
package main.java.design_patterns;
/**
* @Author: hejh
* @Date: 2022/8/16 11:39
*/
public abstract class Parent {
//需要子类自己实现唱歌方法。表示子类可以唱自己喜欢的歌曲。
abstract void song();
//子类无法重写的类,表示规范了,只能用最吃饭。
public final void eat(){
System.out.println("eat with mouth");
}
}
子类:
package main.java.design_patterns;
/**
* @Author: hejh
* @Date: 2022/8/16 11:40
*/
public class Son extends Parent {
@Override
public void song(){
System.out.println("I like song");
}
public static void main(String[] args) {
Parent parent = new Son();
parent.song();
parent.eat();
}
}
输出:
I like song
eat with mouth
Process finished with exit code 0