美文网首页Java程序员之言Java 杂谈
Java中的设计模式之适配器、模板设计模式

Java中的设计模式之适配器、模板设计模式

作者: java面试笔试 | 来源:发表于2018-08-26 15:28 被阅读3次

今天咱们再来认识

两个设计模式

适配器设计模式

适配器

在使用监听器的时候, 需要定义一个类事件监听器接口。通常接口中有多个方法, 而程序中不一定所有的都用到, 但又必须重写, 这很繁琐。适配器简化了这些操作, 我们定义监听器时只要继承适配器, 然后重写需要的方法即可。

适配器原理

适配器就是一个类, 实现了监听器接口, 所有抽象方法都重写了, 但是方法全是空的。

适配器类需要定义成抽象的,因为创建该类对象,调用空方法是没有意义的,为了简化程序员的操作, 定义监听器时继承适配器, 只重写需要的方法就可以了.

举个例子:

不知道大家的高中都是什么样的哈~

(就是一个例子,大家写代码的时候不要这么写哈~)

这就是娜娜高中的时候学习的科目,直接实现这个接口的话,就表示在高中所有科目都要学习,但是我们上学的时候是分文科理科特长生的,(不知道现在高考是什么样子了)那么就是有的科目,高考不考就没有必要去学习了

这个时候就可以创建一个中间类。所有方法都是空的,实现这个类没有意义,所以我们把这个类定义为抽象的。

这个时候李雷是一个理科生就只要学习语数外+理综就可以了

韩梅梅是文科生那就是 语数外+文综 就好了

特长生这边娜娜不了解

就不举例子了~

这样适配器的原理是不是就很好理解了

模版设计模式

模版设计模式的概述

模版方法模式就是定义一个算法的骨架,而将具体的算法延迟到子类中来实现

上面有点看不明白?

没关系咱们来动手做一下~

首先我们来写一段程序,用来获取程序运行的时间。

这样就可以求出这个for循环的运行时间大约2.5s~

但是加入我们想测试别的代码执行的时间,就需要一个个的去添加代码,不利于操作,我们现在就可以把计算时间的部分提取出来~

优化代码:

1)把获取时间的方法定义成为一个抽象的类

2)定义一个final方法把算法写进去

3)定义一个抽象的code方法(用于被子类继承,把需要计时的程序写进去)

代码的执行:

优点和缺点

优点

使用模版方法模式,在定义算法骨架的同时,可以很灵活的实现具体的算法,满足用户灵活多变的需求

缺点

如果算法骨架有修改的话,则需要修改抽象类

那么就先到这里了

再见了

扩展阅读

Java网络编程之UDP协议

java中的设计模式之单例模式、工厂模式

公众号:javafirst

相关文章

网友评论

    本文标题:Java中的设计模式之适配器、模板设计模式

    本文链接:https://www.haomeiwen.com/subject/iseoiftx.html