使用抽象类抽象出公共的内容,并且定义规则让每一个子类去实现。
1、角色1:抽象类
package com.tu.test;
public abstract class AbstractTime {
public abstract void template();//抽象方法,子类去实现
public final void getTime() {//不需要重写,添加final关键字修饰
long start = System.currentTimeMillis();
template();
long end = System.currentTimeMillis();
System.out.println("总耗时为:" + (end - start));
}
}
2、角色2:具体类
package com.tu.test;
public class TimeDemo extends AbstractTime{
@Override
public void template() {
System.out.println("I'm a subclass, I have my code...");
for (int i = 0;i < 100;i++) {
System.out.println(i);
}
}
public static void main(String[] args) {
TimeDemo timeDemo = new TimeDemo();
timeDemo.getTime();
}
}