在看Tomcat启动源码的时候,涉及到模板设计模式,不学模板设计模式,简直有点看不懂,学完了,也明白了,就是把公共的方法放在父类,然后父类调用子类的实现
我自己写的
仿着Tomcat写的
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| public interface Lifecycle {
void init();
}
abstract class AbstractLifecycle implements Lifecycle{
abstract void run();
@Override public void init() { System.out.println("这里是公共方法"); run(); System.out.println("这里也是公共方法"); } }
public class ServerStandard extends AbstractLifecycle {
@Override void run() { System.out.println("我是实现,父类将调用我"); } }
public class ServerStandard2 extends AbstractLifecycle {
@Override void run() { System.out.println("我是实现2,父类将调用我"); } }
public class Test {
public static void main(String[] args) {
ServerStandard serverStandard = new ServerStandard(); serverStandard.init();
System.out.println("============================================");
ServerStandard2 serverStandard2 = new ServerStandard2(); serverStandard2.init();
} }
|
别人的例子
https://juejin.im/post/6844903520844382215