j***a语言接口设计,j***a 接口设计
kodinid
2024-05-30
20
大家好,今天小编关注到一个 比较 有意思 的话题,就是 关于java 语言 接口 设计 的问题 ,于是小编就整理了5个相关介绍 Java 语言接口设计的解答,让一起看看吧。
java中用于定义接口的关键字是什么? java中,接口可以怎么通俗的理解? 接口,与,实现接口类,的关系? LabView和Java可以接口吗? java为什么要用接口? java为什么要设计interface,是为了尽可能替代类的继承吗? 定义接口用 int erface , 实现 接口用 implements 。如:interface Phone {void call();}class XiaoMi implements Phone {@Overridepublic void call() {System.out.println("打电话。");}}
j***a中,接口可以 怎么 通俗的理解? 接口,与,实现接口类,的关系? j***a是只支持 单继承 的,这样有很多 不便。为了解 决这个 问题,***用接口的方法 ,j***a支持多实现,就是一个类可以实现多个接口,在实现接口的同时还可以继承一个类,你实现了这个接口也类似于继承了这个接口。接口中的方法都是抽象 的,没有 方法体的,其作用就是让子类 实现的,方法默认有public abstract接口中的属性 默认加修饰 符,public static final ,所以可以通过类名调用 ,也可以通过对象 调用。另外接口也是为多态 提供 方便。
LabView和J***a可以接口吗? 把Labview的程序 生成 为dll ,在j***a中调用这个dll2、接口的形式太多了,得看你的接口是要干什么,如果 只是单纯的数据 传输,那可以用文件 接口啊,很灵活呀
j***a为什么要用接口? J***a不支持多继承,但支持多接口,接口能弥补不支持多继承的缺点;
1.接口是j***a中的一大特性和一大支柱性的优。
2.接口用来别具体的类实现,会自动 继承接口中的抽象方法给这类继承他的类。
3.接口有点像是复制 的意思.只不过是j***a中是这么写罢了。
4.现在 已经开始 "面向 接口编程 "时代,利用接口来解耦。
5.接口中的方法一定都会被继承他的类实现`,如果少继承了或者没有继承`会报错,
比如说`写了100个类,每个类中都需要 一些 同名且返回 值一样的方法,这时候就可以用接口,把这些方法全部写在一个接口中,让这10个类去实现,这样100个类中就有了这些方法`只需要自己 具体的去填写方法内部了。
j***a为什么要设计interface,是为了尽可能 替代类的继承吗? 继承代价太大,强制你把父类的所有东西都拿过来,不然就不准使用 ,这种将方法和属性强耦合的方式容易导致类继承多了到后面积 重难返。使用鸭子类型 (接口)能避免一部分继承的缺陷,go里甚至直接继承都没有了,只有接口。
以前我们把物体抽象,大象抽象是动物,动物抽象是生物 ,这样本身就把对象的内容 和行为绑定了,比如大象会喷水,就给大象加个喷水的方法,但是如果鱼也会喷水,喷水这个方法又不能放到动物类里,那么基于大象和鱼的喷水方法实现的上层方法就无法复用,这两个 喷水在编译器 看来是没有任何关系的。
开始人们想到搞一个喷水动物类,继承动物类,大象和鱼再继承喷水动物类。但是这样终究治标不治本,再有其他的变化,继承链又要修改 。
因为实际上我们使用对象,都是在使用其方法(属性其实也应该算方法)。
我对面向对象程序过程 的理解,这个过程实际上就是让对象之间使用方法互发消息通信 和动作,最终完成工作 。
大家都知道的一句话,上层应该依赖抽象而不是依赖细节,然而依赖一个基类,本身已经依赖这个基类的实现细节,基类要求 有个int成员 ,那么任何子类无论如何 都需要有个int成员。那么理应将方法抽象出来,而不去关心其到底是什么,因为我们并不使用对象内部的内容,我们只使用方法。
比如有个iwriteable接口,表示 对象可以按字节 写入 ,那么上层的代码 就不用管写的到底是什么了,只要能写就行,就可以基于这个iwriteable接口里的方法,写出例如写字符串 ,写图片等方法。任何实现了这个接口的类,都可以复用这些写字符 串,写图片的代码。
那么就有人要问了,那如果我确实要求要有个int成员,因为我上层代码要使用呢?那么根据前面说的,属性也是方法,你应该再定义一个接口,比如这个int存的是年龄,那么就来个h***eage接口并实现它。调用的地方可以要求对象实现哪几个接口,这样也能获取需要的属性。
这么一来,连属性都没有了,那么继承也可以没有了,毕竟你要求的不是基类了,是一个或多个接口的组合 了,所以你可以看到,接口替代继承是很自然的,而不是什么刻意而为的,是更高级 抽象的体现。事实上基于自然规则的那套大象是动物,动物是生物的那套面向对象规则,在程序设计 里并不好用 。所以如果让我介绍面向对象,我不会讲这些例子。
到此,以上就是小编对于j***a语言接口设计的问题就介绍到这了,希望介绍关于j***a语言接口设计的5点解答对大家有用。
标签: 接口
继承
方法
版权声明: 本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。