📄 c_template.java
字号:
/*
看过《恋爱三步曲》这部经典文章吗?相识、热恋、分手(Template method),
但每个步骤针对不同的情况,都有不一样的做法,这就要看你随机应变啦(具体实现);
模板方法模式:模板方法模式准备一个抽象类,将部分逻辑以具体方法以及
具体构造子的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。
不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。
先制定一个顶级逻辑框架,而将逻辑的细节留给具体的子类去实现。
*/
/*应用示例
使用过Spring + Hibernate开发过的人,在写DAO的时候都使用过Spring的
HibernateDaoSupport类,然后在实现的时候就可以很轻松的使用getHibernateTemplate()
方法之后就可以调用save()、delete()、update()等Hibernate的Session的操作,很简单。
*/
public class C_template{
public static void main(String[] args) {
LoveProcess ml=new MyLove();
ml.fallInLove();
ml=new YourLove();
ml.fallInLove();
}
}
abstract class LoveProcess {
public abstract void meet();
public abstract void love();
public abstract void away();
public final void fallInLove(){
this.meet();
this.love();
this.away();
}
}
class MyLove extends LoveProcess{
public void meet(){
System.out.println("偶尔的一次网聊开始了一段网恋... ...");
}
public void love(){
System.out.println("死去活来,天昏地暗... ...");
}
public void away(){
System.out.println("默然回首,那人却在灯火阑珊处。");
}
}
class YourLove extends LoveProcess{
public void meet(){
System.out.println("父母给你们订了个娃娃亲... ...");
}
public void love(){
System.out.println("你是谁,我们在一起干吗?");
}
public void away(){
System.out.println("各过各的。");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -