博客
关于我
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/

你可能感兴趣的文章
Netpas:不一样的SD-WAN+ 保障网络通讯品质
查看>>
netron工具简单使用
查看>>
NetScaler MPX Gateway Configuration
查看>>
NetScaler的常用配置
查看>>
netsh advfirewall
查看>>
NETSH WINSOCK RESET这条命令的含义和作用?
查看>>
netstat kill
查看>>
netstat命令用法详解
查看>>
Netstat端口占用情况
查看>>
Netty 4的内存管理:sun.misc.Unsafe
查看>>
Netty channelRegistered\ChannelActive---源码分析
查看>>
Netty NIO transport && OIO transport
查看>>
netty php,netty
查看>>
Netty WebSocket客户端
查看>>
netty 主要组件+黏包半包+rpc框架+源码透析
查看>>
Vue过渡 & 动画---vue工作笔记0014
查看>>
Netty 异步任务调度与异步线程池
查看>>
Netty 的 Handler 链调用机制
查看>>
Netty 编解码器和 Handler 调用机制
查看>>
Netty 编解码器详解
查看>>