比如,你要一个充气娃娃,这个充气娃娃有一个makeLove方法,你买这个娃娃就是冲着makeLove去的,你不关心它是哪国的娃娃,长得怎样。那么代码就体现为:
interface Chongqiwawa{
public void makeLove(String name);
}
class Person{
Chongqiwawa wawa;
public void setWawa(Chongqiwawa wawa){
this.wawa = wawa;
}
private String name;
public void makeLove(){
//调用wawa的makeLove方法
wawa.makeLove(name);
}
现在,你想和wawa那个,就可以这样用了:
main(){
Person you = new Person();
you.makeLove();
}
报错了吧?你怎么能跟虚的wawa那个呢?所以必须要买一个wawa.好吧,去逛成人店选购一个wawa.这里有日本娃娃,美国娃娃,先看看美国娃娃功能怎么样。
class USAWawa implements Chongqiwawa{
public void makeLove(String name){
System.output.println(name + " come on! a,a, a...");
}
}
好吧,你已经流口水了,一口价成交,然后带回家,迫不及待实践一下,代码体现为:
main(){
Person you = new Person();
Chongqiwawa wawa = new USAWawa();
you.setWawa(wawa);
you.makeLove();
}
这时候你已经可以和娃娃水乳交融了。不久,你发觉厌倦了美国娃娃,想试下日本娃娃,再次来到成人超市,日本娃娃makeLove功能实现如下:
class JapanWawa implements Chongqiwawa{
public void makeLove(String name){
System.output.println(name + " yemede! a,a, a...ganbade...");
}
}
OK,你直接丢下一堆钞票一句不用找就抱回家了,马上进入主题:
main(){
Person you = new Person();
//获得实际的wawa
Chongqiwawa wawa = new JapanWawa();
you.setWawa(wawa);
you.makeLove();
}
看见了吗,只需改动一行代码,你就实现了娃娃的切换,得到不同的makeLove感受,其他代码都不用改。
OK,停止 YY,回到主题。
这里的Chongqiwawa 对应于 ActionListener,你要实现actionListener接口就相当于实现一个美国娃娃或日本娃娃,然后你addActionListener,就相当于给系统提供一个wawa,系统只要在产生相应事件时调用接口的actionPerformed方法,就相当于你在饥渴时调用makeLove方法,你知道有这个方法即可,不用关心他是哪来的和怎么实现的
相关推荐
UVM概述及uvm_component和uvm_object(一)
UVM:Universal Verification Methodology(通用验证方法学) UVM:是建立在systemverilog平台上的一个库,提供了一系列的接口,让我们能够更方便的进行验证。验证平台组成: Driver:用来把不同的激励施加给DUT; Monitor:用来检测DUT的输出; Scoreboard:专门用来比较期望值与monitor检测到的DUT输出; Refer
Java中接口的清晰+形象理解
大家都知道,在Java应用开发中,要“面向接口编程”,那么,对于接口的清晰理解尤为重要,尤其是对设计模式的学习。 在网上搜索了很多关于接口的定义,但是认识接口,还得从多个方面去理解,尤其是对接口的形象理解。 下面是摘自知乎和研磨设计模式: 接口只是一个规范,所以里面的方法都是空的。 假如我开了一个宠物粮店,声明所有宠物都可以来我这里买粮食,这就相当于一个接口, public inte
虚拟机扩容——非LVM分区
虚拟机扩容——非LVM分区
C#委托与事件,通俗易懂详细解释
C#委托与事件,通俗易懂详细解释
IBM Storwize V3700存储维护实战:硬盘更换、电源模块热插拔与带外管理IP配置
在企业IT基础设施中,存储阵列是数据持久化的核心组件,其稳定运行直接关系到业务连续性。存储阵列通常采用RAID技术实现数据冗余,并通过热插拔、冗余电源等设计保障高可用性。带外管理则提供了独立于业务网络的硬件级监控与管理通道,是运维的关键手段。本次实战以一台IBM Storwize V3700存储阵列为例,详细记录了在业务低峰期,依据严谨的操作流程,对出现SMART预警的硬盘进行在线更换,并对有异响的冗余电源模块实施热插拔更换。针对管理界面强制要求设置VIP才能配置带外管理地址的限制,文章提供了通过SSH命令
手机刷双系统
刷机教程(https://www.geekeyes.cn/forum.php/forum.php?mod=viewthread&tid=492) 解锁教程(http://www.gioov.com/index.php/1386) 解锁教程 cmd下 进入adb目录( 如果环境变量配置了adb 可以直接在cmd 下输入命令) 手机连接电脑,确保usb 调试打开,然后手机连接电脑,...
用生动形象的语句来阐述java多线程(转载自高人)我被彻底征服了
public class Yi_Hong_Courtyard { public static void main(String[] args) { // TODO Auto-generated method stub Yi_Hong_Courtyard yunxing = new Yi_Hong_Courtyard();
DBC到ARXML:AUTOSAR CAN通信栈自动化配置完整指南
在AUTOSAR架构下,DBC(CAN数据库文件)与ARXML(AUTOSAR XML)分别扮演着描述总线通信和ECU内部配置的关键角色。DBC定义了网络上的报文与信号,而ARXML则是AUTOSAR工具链交换配置数据的标准格式。在实际的ECU开发中,如何将DBC中的通信信息高效、准确地转换为ARXML,并自动生成可编译的CAN通信栈BSW配置,是许多工程师面临的痛点。借助DaVinci Configurator等工具,我们可以通过自动化导入链路消除手工映射带来的字节序错误、信号起始位偏差等高风险问题,大幅
Java中接口作用的理解
关于Java中接口作用的深入理解。这是个很容易遇到的问题吧,看下面红色的部分应该就能理解了。 / 2019/3/1 补充 : 接口的存在也是为了弥补类无法多继承的缺点,假设一个情况,父类--Animal 子类--Dog、Cat 、People、Sheep、Tiger、Lion。假设在 Animal 中都存在 eat()这个公有的方法。但是 Tiger 和 Lion 、People 还拥有...
Silvaco TCAD | 从PIN到APD:高性能光电探测器的仿真设计与优化
本文详细介绍了使用Silvaco TCAD进行光电探测器仿真设计与优化的全过程,从基础的PIN结构到高性能APD的实现。通过实战案例和代码示例,展示了如何优化器件参数、实现雪崩效应以及进行高级仿真分析,帮助工程师提升光电探测器的量子效率和响应速度。
PX4从放弃到精通(二十一):使用git管理PX4代码
文章目录前言一、设置git密钥二、将代码上传至gitee 前言 Ubuntu 18.04 PX4 1.11.3 由于github有时网速较慢,本文使用gitee。 一、设置git密钥 ssh-keygen -t rsa -C “your_email@youremail.com” your_email@youremail.com为自己注册的gitee账户邮箱.设置路径与密码时,也直接回车不设置,如下图,密钥生成的位置在红框处. 在密钥目录下按Ctrl+H显示隐藏文件,进入.ssh文件夹用gedit打开id
java接口的作用
(一) java接口的用处主要体现在下面几个方面: (1)通过接口可以实现不相关类的相同行为,而不需要了解对象所对应的类。 (2)通过接口可以指明多个类需要实现的方法。 (3)通过接口可以了解对象的交互界面,而不需了解对象所对应的类。 (二) 类描述了一个实体,包括实体的状态,也包括实体可能发出的
Claude Code 学习笔记之一:理解 Agentic Loop 与内置工具
本文介绍了Claude Code这一终端智能助手的工作原理与使用方式。作者从ABAP开发经验出发,指出学习Claude Code的高级用法具有长期价值。文章详细解析了Claude Code的Agentic Loop机制:通过大语言模型进行推理,借助各类工具执行任务,并循环收集上下文、执行操作、验证结果三个步骤。系统阐述了Claude Code支持的五大类工具及其扩展方式,说明了其访问本地资源的范围和自治处理能力,同时介绍了权限模式等安全机制。最后提供了从小任务开始、充分探索、及时引导、使用CLAUDE.md
java接口有什么用_接口有什么作用
接口的作用:1、接口可以使项目分离,所有层都面向接口开发,提高开发效率;2、接口使代码和代码之间的耦合度降低;3、接口可以多实现,多继承,并且一个类除了接口之外,还可以继承其它类。接口的作用:1、可以使项目分离,所有层都面向接口开发,提高开发效率;2、接口使代码和代码之间的耦合度降低,变得可插拔,可以随意切换;3、接口和抽象类都能完成某个功能,优先选择接口,因为接口可以多实现,多继承,并且一个类除...
温度PID控制PLC程序
温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值
廖雪峰Python教程[完整版]
廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白
java 接口的作用解析
java接口的意义java当中继承一个接口,要重写他的方法的话,那为什么还要多此一举的去实现一个接口呢? 直接把方法写在类当中不就可以了? 就是说去掉类名后面的Implements接口,可以不可以呢? 接口的最主要的作用是达到统一访问,就是在创建对象的时候用接口创建,【接口名】【对象名】=new【实现接口的类】,这样你像用哪个类的对象就可以new哪个对象了,不需要改原来的代码,就和你的...
Data-Structures-and-Algorithm-Analysis-in-Java.pdf
作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...
java comparable接口作用_Java 特殊作用的接口
ComparableComparable接口用于自定义比较规则。对于Java的原生类型,他们之间的大小比较是依照数学上的大小来比较,自然比较好理解。但是对于自定义的复合类型(通常来说是Java bean),Java怎么比较他们之间的大小呢?比如说我们自定义了Apple这个类:class Apple {private String name;private int weight;// setter ...
java中接口有什么作用是什么_java接口的作用是什么?<转>
《下面是madai和clkrst的回答。我的问题是:java的接口到底起什么作用?1、从书中看到的是java程序的接口中只定义了常量及空方法,空的方法有什么用呢?还要在类中写方法体,那还要接口干什么?2、一个程序中写了2个接口,并在同一个类中写方法体,这与多继承有什么关系。3、包中那些已定义的接口,怎么知道那里面定义了什么方法。说到底,接口有什么实际意义,哪本书都不讲,一味的讲是多继承,不结合实...
java接口的作用和意义_java什么是接口?接口有什么作用?接口如何使用?
1、在Java中接口是一种特殊的抽象类。跟一般的抽象类相比,接口里面的所有方法都是抽象方法,接口口里面的所有属性都是常量。也就是说,接口里面只有方法定义而没有任何方法实现。上面所说的是接口的概念。2、接口用来干什么 通常用接口来定义实现类的外观,也就是实现类的行为定义。用来约束实现类的行为。接口就相当于一份契约,根据外部应用需要的功能,约定了实现类应该要实现的功能,但是具体的实现类除了实现接口约...
java中接口的作用
java中接口的作用
java 的接口到底起什么作用
我想,可能不止我一个人有这个疑问,所以,把它贴出来。 下面是madai和clkrst给我的回答。 在此谢谢两位。 我的问题是: java 的接口到底起什么作用? 1、从书中看到的是java程序的接口中只定义了常量及空方法,空的方法有什么用呢?还要在类中写方法体,那还要接口干什么? 2、一个程序中写了2个接口,
java 中 接口的作用
[size=medium]java接口作用是什么? 一直对java中接口的作用不是太明了。虽说一个类可以implements多个接口,但接口本身只是定义了几个方法,没有任何实际的意义,具体的实现还是要在实现它的类中进行。这样的话,接口还有什么意义呢? 举个例子来说,现有 public interface I { meth...
java接口作用_java接口作用及其好处
接口是实现构件可插入性的关键,可插入构件的关键在于存在一个公用的接口,以及每个构件实现了这个接口。什么是接口?Java中的接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。接口的两种含义:一,Java接口,Java语言中存在的结构,有特定的语法和结构;二,一个类所具有的方法的特征集合...
JAVA接口到底有什么作用
java中接口的具体作用对于初学者来说理解起来确实有点难度,毕竟它是抽象上的抽象嘛!!! 这里废话就不多说了 直接把自己对java接口作用的理解奉上 ,同时也希望取得抛砖引玉的效果 期望牛人补充 指教!!!! java接口的具体作用之一 -----对内 (1) 它让业务层与逻辑层分离实现层与层之间的解耦 举个很简单的例子 【系统后
java的接口的作用_详细介绍Java接口的作用
今天和同事好好的讨论了java接口的原理和作用,发现原来自己的对接口的理解仅仅是局限在概念的高度抽象上,觉得好像理解了但是不会变化应用其实和没有理解差不多。以前看一个帖子说学习一个东西不管什么时候都要带着“这个东西是什么?”、“这个东西有什么作用?”和“这个东西怎样用?”三个问题,这三个问题回答上来了说明你对这个事物的理解达到了一定的高度。今天还有一个比较深的经验是要学习到知识就要多和人交流。就像...
Java接口作用
Java 中的接口有什么作用? 例如我定义了一个接口,但是我在继承这个接口的类中还要写接口的实现方法,那我不如直接就在这个类中写实现方法岂不是更便捷,还省去了定义接口?接口在java中的作用是什么?个人觉得只是一种规范。大家的看法呢?答: 接口的作用对于很多新手来说很不容易理解,我给大家举个例子。 接口只是一个规范,所以里面的方法都是空的。 假如我开了一个宠物粮
java comparable接口作用_Comparable接口作用(转)
今天在开发中无意看到Integer包装类内部实现了Comparable接口,因此探查一下该接口作用:查看API解释:此接口强行对实现它的每个类的对象进行整体排序。这种排序被称为类的自然排序,类的 compareTo 方法被称为它的自然比较方法。一、为什么需要实现这个接口呢?首先看一下数据的例子:String[] strArr = {"A","B","C","E","D"};Arrays.sort(...
java中接口有什么作用
接口的作用就是把使用接口的人和实现接口的人分开,实现接口的人不必要关心谁去使用,而使用接口的人也不用关心谁实现的接口,由接口将他们联系在一起。以上像一段绕口令,那么通过下面的几段程序解释: 1、以生产和使用一台计算机为例,首先,我们定义了一个显卡的接口,他里面有显示功能和获取显卡名称的功能: interface VidioCard { void display(); String get
1万+



被折叠的 条评论
为什么被折叠?



