灵魂三问?
什么是模板模式?
有什么用?
怎么用?
什么是模板模式?
大家都知道活字印刷,使用字模板可以很快印刷出来好多好多字。用的染料不同呢印出来的字也不同。这里,模板模式就是从这样的生活现象中抽象出来的一种设计模式。
有什么用?
使用模板设计模式,你只需要定义好模板(抽象类),具体实现细节则交给子类去完成就行了。这样可以满足不同子类的不同需求。
怎么用?
1,设计模板
public abstract class abstractDisplay {
public abstract void open();
public abstract void close();
public abstract void print();
public final void display()
{
open();
for(int i=0;i<5;i++)
{
print();
}
close();
}
}
2,子类继承,实现模板
public class PrintChar extends abstractDisplay {
private char ch;
public PrintChar(char c)
{
this.ch=c;
}
@Override
public void open() {
// TODO Auto-generated method stub
System.out.print("<<");
}
@Override
public void close() {
// TODO Auto-generated method stub
System.out.print(">>");
}
@Override
public void print() {
// TODO Auto-generated method stub
System.out.print(ch);
}
}
3,子类调用
public class PrintTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
abstractDisplay a1=new PrintChar('c');
a1.display();
}
}
打印结果: