标签:info turn jaf ilo class nrv 方法 bst jsb
这次来看下模板方法,还是先来看下head first的定义:在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。
再来看下类图:

看下代码吧:
public abstract class DB {
public void connectDB() {
if (dirverHook()) {
prepareDirver();
}
getConnect();
}
public abstract void prepareDirver();
public boolean dirverHook() {
return true;
}
public void getConnect() {
System.out.println("获取连接");
}
}
public class Mysql extends DB {
@Override
public void prepareDirver() {
System.out.println("准备mysql驱动");
}
@Override
public boolean dirverHook() {
return false;
}
}
public class Oracle extends DB {
@Override
public void prepareDirver() {
System.out.println("准备oracle驱动");
}
}
标签:info turn jaf ilo class nrv 方法 bst jsb
原文地址:https://www.cnblogs.com/shenqiaqia/p/11143361.html