博客
关于我
java之模板方法设计模式
阅读量:472 次
发布时间:2019-03-06

本文共 775 字,大约阅读时间需要 2 分钟。

抽象类体现的就是一种模板模式的设计。抽象类作为多个子类的通用模板。子类在抽象类的基础上进行扩张和改造,但子类总体上会保留抽象类的行为方式。

解决的问题:

  • 当功能内部一部分实现是确定的,一部分实现是不确定的,这时可以把不确定的部分暴露出去,让子类实现;
  • 编写一个抽象父类,父类提供了多个子类的通用方法,并把一个或多个方法留给其子类实现,就是一种模板设计模式;

Animal.java

public class Animal{}abstract class Template{    public final void getTime() {        long start = System.currentTimeMillis();        code();        long end = System.currentTimeMillis();        System.out.println("执行的时间是:"+(end-start));    }    public abstract void code();}class SubTemplate extends Template{    public void code(){        for(int i = 0;i<10000;i++) {            System.out.println(i);        }    }}

Test.java

public class Test {    public static void main(String[] args) {        SubTemplate sub = new SubTemplate();        sub.getTime();}

输出:

0

...

9999

执行的时间是125

转载地址:http://kzsbz.baihongyu.com/

你可能感兴趣的文章
Mysql账号权限查询(grants)
查看>>
MySQL迁移到达梦:如何轻松、高质量完成迁移任务
查看>>
mysql返回的时间和实际数据存储的时间有误差(java+mysql)
查看>>
mysql还有哪些自带的函数呢?别到处找了,看这个就够了。
查看>>
mysql进阶 with-as 性能调优
查看>>
mysql进阶-查询优化-慢查询日志
查看>>
wargame narnia writeup
查看>>
Mysql进阶索引篇03——2个新特性,11+7条设计原则教你创建索引
查看>>
Mysql连接时报时区错误
查看>>
mysql逗号分隔的字符串如何搜索
查看>>
MYSQL遇到Deadlock found when trying to get lock,解决方案
查看>>
MYSQL遇到Deadlock found when trying to get lock,解决方案
查看>>
mysql部署错误
查看>>
MySQL配置信息解读(my.cnf)
查看>>
Mysql配置文件my.ini详解
查看>>
MySQL配置文件深度解析:10个关键参数及优化技巧---强烈要求的福利来咯。
查看>>
Mysql配置表名忽略大小写(SpringBoot连接表时提示不存在,实际是存在的)
查看>>
mysql配置读写分离并在若依框架使用读写分离
查看>>
MySQL里的那些日志们
查看>>
MySQL锁
查看>>