/**
* 模板模式
*/
public class Main {
public static void main(String[] args) {
Template template = new TemplateContent();
template.printN(10);
}
}
public abstract class Template {
public abstract void print();
public void printN(int times) {
System.out.println("开始打印"+times+"次");
for (int i = 0; i < times; i++) {
print();
}
}
}
public class TemplateContent extends Template {
@Override
public void print() {
System.out.println("*****");
}
}
用法:
就是抽象类的用法,用接口用多了,有些初学者忘了还有抽象类,这两个东西解决的问题是不一样的,抽象类在实际编程中一般在类层次的顶层,定义一些共通行为,这些共通行为可能是抽象的也可能是引用了抽象方法的方法。