为什么使用接口?
发布网友
发布时间:2023-05-05 07:03
我来回答
共1个回答
热心网友
时间:2023-05-24 02:05
问题一:接口的作用,为什么要用接口 接口的作用:
接口的用途不但多,而且是非常必要。这就是为什么我们为什么老是提“面向接口编程”的概念。
你现在对其理解不深没有关系,只是在实际中先用。等积累到一定程度就知道接口的好处了。
就拿你上面的例子说接口的用途之一,那就是“多态”。这个词你应该不陌生吧,相信老师应该和你们说过吧
VideoCard vc=new Elsa();
VideoCard vc=new Colourful();
vc.display();
这里vc 可以new Elsa(); 可以new Colourful(); 可以实现不同的功能。换句话说一会可以拿它当锤子使用,一会
拿他当电锯使用,前提是他们实现了同样的接口。只要你接口的方法定义没有变,针对外部而言 ,你的具体实现外部是不
感知的。所以,这就为你以后程序的扩展性提供基础。“对修改封闭,对扩展开发”。
前面是接口的一个基本用途,规定子类的行为。更为广阔的用途是接口为其他人使用者提供什么用途。模块和模块之间的解耦
就看你的接口设计的是不是合理,是不是好用。这就是框架设计师。
为什么要用接场 :用于处理多变的情况。
接口在实际开发过程中最大好处是,你可以按照设计,先把接口写好,然后分配大伙干活的时候,告诉a们去用写好的接口去实现他们的具体功能,而告诉b们,去写那些已经写好但是没有具体的代码的接口,这样可以提高工作效率。并且底层和应用也通过接口做了一个很明显的分层。
问题二:为什么要用接口? 呵呵 你的理解和当初我的理解一样,但这种理解是不正确的。
不知道你用没用过JAVA的API,其实编程过程中很多东西都不是我们自己写的,就好比你盖楼,你不可能自己做水泥,做门窗,你写的程序也多是调用别人写好的东西来使用,如果不定义接口的话,你怎么知道怎么样调用啊?你知道传几个参数,类型格式什么吗?你可能会说我直接看实现类,可如果代码很多你看的过来吗?如果使用接口就很清晰明了。
接口还有一个十分重要的作用,不知道你聊不理解设计模式,里面的好多模式都和接口有关系
回答了半天才看见你给的悬赏分居然是0!!!!!!!!!!!!
算了当我没说!
问题三:Java中为什么要引进接口的概念? 对象通过接口对外提供服务。在面向对象的范畴中,接口是一个抽象的概念,是指系统对外提供的所有服务。系统的接口描述系统能够提供那些服务,但不包含服务实现的细节。站在使用者的角度,对象中所有向使用者公开的方法的声明构成了对象的接口。
在Java语言中,骇口有两种意思:
一、是指以上介绍的概念性的接口,即指系统对外提供的所有服务,在对象中表现为public类型的方法的声明。
二、是指用interface关键字定义的实实在在的接口,也称为接口类型,它用于明确地描述系统对外提供的所有服务,它能够更加清晰的把系统的实现细节与接口分离,实现封装性。
接口是实现系统之间松藕和的有力手段。接口还提高了系统的可扩展性。
关于松耦合的概念请参看jdon/jivejdon/thread/30175
问题四:抽象类和接口的区别、为什么用抽象类。 答得稀烂。。。网上再学习了一次,在这里记下看到各位大虾的金言。一、抽象类:在面向对象领域,抽象类主要用来进行类型隐藏。那什么是类型隐藏呢?我们可以构造出一个固定的一组行为的抽象描述,但是这组行为却能够有任意个可能的具体实现方式。这个抽象描述就是抽象类,而这一组任意个可能的具体实现则表现为所有可能的派生类。好比,动物是一个抽象类,人、猴子、老虎就是具体实现的派生类,我们就可以用动物类型来隐 *** 、猴子和老虎的类型。( 参考doSome方法)二、接口:三、抽象类和接口的区别:首先,抽象类在Java语言中表示的是一种继承关系,一个类只能使用一次继承关系。但是,一个类却可以实现多个接口。也许,这是Java语言的设计者在考虑Java对于多重继承的支持方面的一种折中考虑吧。 其次,在抽象类的定义中,我们可以赋予方法的默认行为。但是在接口的定义中,方法却不能拥有默认行为,为了绕过这个*,必须使用委托,但是这会 增加一些复杂性,有时会造成很大的麻烦。 抽象类在Java语言中体现了一种继承关系,要想使得继承关系合理,父类和派生类之间必须存在”is a”关系,即父类和派生类在概念本质上应该是相同的。对于接口来说则不然,并不要求接口的实现者和接口定义在概念本质上是一致的,仅仅是实现了接口定义的契约而已。接口表示的是”likea”关系。 使用抽象类来定义允许多个实现的类型,比使用接口有一个明显的优势:抽象类的演化比接口的演化要容易的多。在后续的发行版中,如果希望在抽象类中增加一个方法,只增加一个默认的合理的实现即可,抽象类的所有实现都自动提供了这个新的方法。对于接口,这是行不通的。虽然可以在骨架实现类中增加一方法的实现来解决部分问题,但这不能解决不从骨架实现类继承的接口实现的问题。由此,设计公有的接口要非常谨慎,一旦一个接口被公开且被广泛实现,对它进行修改将是不可能的。 所以,使用接口还是抽象类,取决于我们对问题的概念的本质理解和设计的意图。Java接口与抽象类的相同点:1. 都不能被实例化。2. 都能包含抽象方法。抽象类与接口紧密相关。然接口又比抽象类更抽象,这主要体现在它们的差别上:1)类可以实现无限个接口,但仅能从一个抽象(或任何其他类型)类继承,从抽象类派生的类仍可实现接口,从而得出接口是用来解决多重继承问题的。2)抽象类当中可以存在非抽象的方法,可接口不能且它里面的方法只是一个声名必须用public来修饰没有具体实现的方法。3)抽象类中的成员变量可以被不同的修饰符来修饰,可接口中的成员变量默认的都是静态常量(static fainl)。4)这一点也是最重要的一点本质的一点抽象类是对象的抽象,然接口是一种行为规范。例如每个接口可以代表一种最顶层的抽象,可以理解为代表一类东西,如果一个类实现了多个接口,那这个类就有了多种类型,即接口是定义混合类型的理想工具最后:有一种设计模式,就是,默认适配模式,意思就是说,首先定义一个接口,通过抽象类实现这个接口,并实现一些子类不需要一定实现的方法,然后,子类就可以选择是继承接口,实现所有方法,还是直接继承这个抽象类实现具体需要的方法,定义成抽象类是为了以后要其子类来继承的,因为父类里有很多方法是无法定义具体的实现的,只能定义一个原型,让子类来分别实现!所以要定义成抽象的!简单来说就是抽象类是在接口和实体类之间的一个桥梁例如做一个接口叫做飞行FlyAnimalAction,里面定义一个方法叫做flying,再定义一个方法叫做eat做一个类叫做蚊子实现接口,蚊子要实现flying方......>>
问题五:请问Java中为什么要有接口。 首先,Java里面是不能多重继承的,接口的使用可以帮助我们弥补这点
其次,使用接口能隐藏我们程序内部的实现,我们只需要对外提供接口的调用,而将具体的实现放到实现接口的类里面。
还有呢就是想你所说的重载方法还不如直接在类里面定义,这点是可以达到目的,但是你这样做是非常麻烦的。接口就像插座一样,一个插孔可以插很多种电器,这个插孔就是我们像外面提供的接口,所有的电器都要实现这个接口,也就是要把插头做成这样。如果像你想的那样,那我岂不是要为每一个电器都提供一中类型的插孔
问题六:Java中为什么要使用接口 接口可以使程序更整洁,比如你看到了这个类实现了Runnable接口,那它就一定有一个run()方法。就像招牌一样,方便调用。
接口解决了java的多继承。虽然java只能继承一个类但却可以实现多个接口。
问题七:Java面向对象中为什么要使用接口?? 接口是规范,规定某个实现类里必须有那些方法,只要事先定义好接口,当大家一起合作的时候就不用特别麻烦的交互,而是每个人写好自己的接口实现类,最后拼接到一起就可以了
比如数据库连接类,接口规定好有哪些方法、方法的功能,然后每个数据库厂商根据接口去实现具体的类,达到统一的目的,要不每个数据库厂商自己实现一套,那么你编程的时候就要根据不同驱动使用不同的方法,造成不必要的麻烦
还有接口和多继承一点关系都没有
问题八:java中为什么要使用接口 1接口的作用是实现多重继承因为只能继承一个类(规定的)2LZ的意思是接口定义的方法,在实现它的子类中有了,不是重写了吗?它存在的意思是抽象出来了。类似于目录吧!让人更清晰!
问题九:为什么说采用接口,就可以实现解耦 首先你要清楚什么是接口。接口就是标准。生活中有很多接口。如水龙头水管接口、电源接口等。
现在有很多的水龙头生产商,在采用接口之前,厂商要同时提供水龙头和下水管,它们是一体的,不能变更。同时也只适用于他的这一种产品。而有了接口之后,厂商就就不用去管它的下水管如何设计了,只用安装接口标准来生产水龙头,完成后直接接到下水管上就可以了。耽就是面向接口。
这样的话你的下水管就可以使用所有的符合下水管标准的水龙头,而不是之前的一种水龙头。而且更换水龙头更加的方便。
放在程序中说就是。如果一个类不能确定它最后的类型,就是说不知道它以后要被实现成什么样,就可以采用面向接口的编程。所有需要这个类的地方都设成一个接口,而让这个类继承这个接口。后期要更改的时候只用继承这个接口就可以了。
如 你的方法是 public void doSomething(IServer ser);参数是一个接口
public interface IServer{
something
}
然后你就可以写很多不同的类来实现这个接口
如public class a implements IServer{
something
}
public class b implements IServer{
something
}
然后你的方法就可以这样调用了。
doSomething(a);
doSomething(b);
这样都是可以的~不知道你理解没~
问题十:Java项目中为什么要用接口,哪些地方用到了,用接口的好处是什么? 说简单点,一个项目需要别的项目对接的话,就需要接口来调你的项目的数据,方法等。不然直接初始化你的项目的类,从而修改一些数据,添加一些病毒方法的话,怎么办?安全角度。你的项目可能要很多别的来对接,a对接,b对接,c……如果不规范好,a对接后要改,b,c等等怎么办,就没法用了。规范角度。(结合楼上理解更清楚,还有一些学习中的零件接口类比就好理解多了)