适配器设计模式--java进阶day03
1.设计模式
通俗来讲,设计模式就是其他程序员遇到某些问题时的解决经验,我们学习设计模式,在遇到了同样的问题后便可解决

2.适配器设计模式

有人可能会感到疑惑,接口和实现类会有什么问题,我们举两个例子
刚学的键盘监听,我们要使用里面的一个方法,但另外两个方法对我们来说没用,但我们又不能删掉
这个问题,用适配器设计模式就可以很好的解决

第二个例子,假设有一个和尚类,里面有四个和尚平时都要做的事,但我们知道鲁智深只习武,前面三个方法没用

3,适配器设计模式使用
我们先用适配器实现接口,然后再让鲁智深类继承适配器
我们先不让鲁智深类面向接口,而是用鲁智深适配器实现接口,再由鲁智深类去继承适配器,这样便可以调用想调用的方法,而不会多出不必要的方法

.

这样还存在安全隐患,适配器内部方法无逻辑,但可以被调用,因此我们要abstract修饰

4.KeyListener适配器
java中KeyListener存在自己的适配器,我们调用addKeyListener方法时,可以传入它的适配器


适配器设计模式--java进阶day03的更多相关文章
- JAVA进阶之旅(一)——增强for循环,基本数据类型的自动拆箱与装箱,享元设计模式,枚举的概述,枚举的应用,枚举的构造方法,枚举的抽象方法
JAVA进阶之旅(一)--增强for循环,基本数据类型的自动拆箱与装箱,享元设计模式,枚举的概述,枚举的应用,枚举的构造方法,枚举的抽象方法 学完我们的java之旅,其实收获还是很多的,但是依然还有很 ...
- Java设计模式之适配器设计模式(项目升级案例)
今天是我学习到Java设计模式中的第三个设计模式了,但是天气又开始变得狂热起来,对于我这个凉爽惯了的青藏人来说,又是非常闹心的一件事儿,好了不管怎么样,目标还是目标(争取把23种Java设计模式接触一 ...
- Java进阶7 并发优化2 并行程序设计模式
Java进阶7 并发优化2 并行程序设计模式20131114 1.Master-worker模式 前面讲解了Future模式,并且使用了简单的FutureTask来实现并发中的Future模式.下面介 ...
- 适配器设计模式初探(Java实现)
本篇随笔主要介绍Java实现设配器设计模式. 先来看下待解决的问题: (图片转自http://blog.csdn.net/jason0539) 由上图的情况可知,欧洲壁式插座只有三足插口,如果我们想要 ...
- Java适配器设计模式
适配器设计模式,一个接口首先被一个抽象类先实现(此抽象类通常称为适配器类),并在此抽象类中实现若干方法(但是这个抽象类中的方法体是空的),则以后的子类直接继承此抽象类,就可以有选择地覆写所需要的方法. ...
- JAVA基础—适配器设计模式
适配器概念 在计算机编程中,适配器模式将一个类的接口适配成用户所期待的.使用适配器,可以使接口不兼容而无法在一起工作的类协调工作,做法是将类自己包裹在一个已经存在的类中. JDK对适配器设计模式的应用 ...
- java进阶视频分享
更多资源和教程请关注公众号:非科班的科班. 如果觉得我写的还可以请给个赞,谢谢大家,你的鼓励是我创作的动力 课程目录介绍 01.开班仪式02.并发编程专题之多线程基础03.并发编程专题之Java内存模 ...
- Java 进阶 hello world! - 中级程序员之路
Java 进阶 hello world! - 中级程序员之路 Java是一种跨平台的语言,号称:"一次编写,到处运行",在世界编程语言排行榜中稳居第二名(TIOBE index). ...
- [gkk]传智-适配器设计模式,如同电源适配器
//适配器设计模式 是图形化设计中用的.如同电源适配器 import java.awt.*; inport java.awte public calss MyFrame{ public static ...
- Java进阶之路
Java进阶之路——从初级程序员到架构师,从小工到专家. 怎样学习才能从一名Java初级程序员成长为一名合格的架构师,或者说一名合格的架构师应该有怎样的技术知识体系,这是不仅一个刚刚踏入职场的初级程序 ...
随机推荐
- 2024新版本如何配置CLion与cubeMX开发STM32
2024新版本如何配置CLion与cubeMX开发STM32 1. 为什么我要在网上有很多教程的情况下再做一个新版 各种大佬们给出的配置教程原本很详细,但是在时间过了这么久之后已经不完全符合现在的环境 ...
- 关于vue加element-ui上传文件获取文件的sha256的值
首先使用element的上传文件的组件 安装依赖crypto-js npm i crypto-js <el-upload class="upload-demo" drag : ...
- cpa-经济法
1.法律基本原理 2.基本民事法律制度 3.物权法律制度 4.合同法律制度 5.合伙企业法律制度 6.公司法律制度 7.证券法律制度 8.企业破产法律制度 9.票据与支付计算法律制度 10.企业国有资 ...
- weixueyuan-Nginx缓存6
https://www.weixueyuan.net/nginx/cache/ Nginx Web缓存配置 Web 缓存可节约网络带宽,有效提高用户打开网站的速度.由于应用服务器被请求次数的降低,也相 ...
- Python生成成绩报告单:从理论到实践
在教育信息化日益普及的今天,自动化生成和处理学生成绩报告单已成为学校和教育机构的一项重要任务.Python作为一种功能强大且易于学习的编程语言,非常适合用于这种数据处理和报告生成任务.本文将详细介绍如 ...
- Overleaf使用技巧
插入图片 %插入图片% \begin{figure} \centering %居中% \resizebox{0.8\hsize}{!}{\includegraphics[clip=true]{Imag ...
- PostgreSQL 数据备份与恢复:掌握 pg_dump 和 pg_restore 的最佳实践
title: PostgreSQL 数据备份与恢复:掌握 pg_dump 和 pg_restore 的最佳实践 date: 2025/1/28 updated: 2025/1/28 author: c ...
- DeepSeek,你是懂.NET的!
这两天火爆出圈的话题,除了过年,那一定是DeepSeek!你是否也被刷屏了? DeepSeek 是什么 DeepSeek是一款由国内人工智能公司研发的大型语言模型,拥有强大的自然语言处理能力,能够理解 ...
- AtCoder [ABC351E] Jump Distance Sum 题解 [ 绿 ] [ 数学 ]
原题 场上差点就想出来了,就差一个旋转坐标轴了. 初步分析 首先来看如何判断两个点能不能走到,这可以看成下面的一张网格图,相同颜色的格子相互连通. 因此根据瞪眼法,可以把这些格子分为 $ (x_i + ...
- Hetao P1184 宝可梦训练家 [ 绿 ][ 背包dp ][ 线性dp ]
原题 题解 一道超级牛逼的背包变形,想通之后真的很简单,难点在于想到使用 dp 并且用 dp 的值判断是否合法. 首先观察本题的数据范围:\(1\le n,q \le 10^5\) ,可知本题的询问要 ...