admin 管理员组文章数量: 1184232
2024年1月11日发(作者:css实战训练)
精选文档
在java中,什么是接口,接口的特色是什么?
Java接口(Interface),是一系列方法的申明,是一些方
法特色的会集,一个接口只有方法的特色没有方法的实现,
接口就是java供给的一个面向对象的体系(就好似抽象方法和常量值的定义的会集,申明方法和类的申明方法差不多.<修饰符>interface<接口名>{
[<常量申明>]
[<抽象方法申明>]
}
接口是种类变换的前提、是动向调用的保证。实现某一接口
就完成了种类的变换(多重继承) ;动向调用只关怀种类,
不关怀详尽类。同时接口中全部的方法都是抽象方法
,并且接
口中的方法都默认是 public,abstract的,所以可以省略 2个修
饰符,但是正由于这样
,不可以使用和 public,abstract有矛盾的方
,但是不可以申明实例变量 .
法标示,在接口中也可以申明常量
java中的继承只好支持单一继承 ,所以.接口的供给为
1
精选文档
我们实现多继承供给了路径,这么理解就很方便了,),所以这些方法可以在不一样的地方被不一样的类实现,而这些实现可
以拥有不一样的行为(功能) 。
.接口含义:接口,Java语言中存在的构造,
有特定的语法和构造;2.一个类所拥有的方法的特色会集,
是一种逻辑上的抽象。前者叫做“Java接口”,后者叫做“接口”。Java接口自己没有任何实现,由于Java接
口不涉及表象,而只描述 public行为,所以Java接口比Java
抽象类更抽象化。 Java接口的方法只好是抽象的和公开
的,Java接口不可以有构造器,
Java接口可以有 public,静态
的和final属性。二.为什么用接口Java是一种单继承的语言,若要给已有父类的详尽类增添新功能,在OCP原则下,
解决是给它的父类加父类,或许给它父类的父类加父类,直到挪动到类等级构造的最顶端。这样一来,对一个详尽类的可插入性的设计,就变为了对整个等级构造中全部类的修
改。 当有了接口,以上例子中,就不需要保护整个等级结
构中的全部类了.三.接口具胡可插入性:在一个等级构造中的任何一个类都可以实现一个接口,这个接口会影响
到此类的全部子类,但不会影响到此类的任何超类。此类将不得不实现这个接口所规定的方法,而其子类可以今后类自动继承这些方法,自然也可以选择置换掉全部的这些方法,或许此中的某一些方法,这时候,这些子类拥有了可插入性
2
精选文档
(并且可以用这个接口种类装载, 传达实现了他的全部子类 )。
接口供给了关系以及方法调用上的可插入性,软件系统的规
模越大,生命周期越长,接口使得软件系统的灵巧性和可扩
展性,可插入性方面获得保证。 正是有了接口,使得Java
单继承性有了新的扩展的可能 (变向地实现多继承 );三.种类
等级构造Java接口(以及抽象类)一般用来作为一个种类的等
级构造的起点。 假如一个类已经有了一个主要的超类
型,那么经过实现一个接口,这个类可以拥有另一个次要的
超种类,这类次要的超种类叫做混杂种类。 四.Java接口
分类1、一般接口(含有方法定义)publicinterface
ActionListener{public
abstractvoidactionPerformed(ActionEventevent);} 2、表记
接口(无任何方法和属性定义 )表记接口是没有任何方法和属
性的接口.表记接口不对实现它的类有任何语义上的要求, 它
不过表示实现它的类属于一个特定的种类。 public
interface
Serializable{};3、常量接口是指用 Java接口来申明一些常量,
而后由实现这个接口的类使用这些常量。 publicinterface
AppConstants{publicstaticfinal
DATA_SOURCE_NAME="test";publicstaticfinal
USER_NAME="test";public
staticfinalPASSWORD="test";} 五.接口的特色3
、Java
1
精选文档
接口中的成员变量默认都是 public,static,final种类的(都可省
略),一定被显示初始化,即接口中的成员变量为常量(大写,单词之间用"_"分开)
2、Java接口中的方法默认都是 public,abstract
种类的(都可省略),没有方法体,不可以被实例化
3、Java接口中只好包括 public,static,final
public,abstract种类的成员方法
型的成员变量和
4、接口中没有构造方法 ,不可以被实例化
5、一个接口不可以实现 (implements)另一个
接口,但它可以继承多个其余的接口
6、Java接口一定经过类来实现它的抽象方法
7、当类实现了某个 Java接口时,它一定实现接
口中的全部抽象方法 ,不然这个类一定申明为抽象类
8、不一样意创立接口的实例 (实例化),但同意定义
4
类
精选文档
接口种类的引用变量 ,该引用变量引用实现了这个接口的类
的实例
5
精选文档
9、一个类只好继承一个直接的父类 ,但可以
实现多个接口,间接的实现了多继承 .
10.就是实现类一定实现接口中定义的方法;
.Java接口和Java抽象类差别面向对象设计的要点在
于抽象。抽象类与接口都位于继承树的上层。同样点:
1、代表系统的抽象层
,当一个系统使用一颗继承树上的类时 ,
应当尽量把引用变量申明为继承树的上层抽象种类,这样可以提升两个系统之间的送耦合
2、都不可以被实例化
3、都包括抽象方法 ,这些抽象方法用于描述系统能供给哪
些服务,但不包括方法体不一样点: 1、最大的一个差别,就
在于Java抽象类可以供给某些方法的部分实现,而 Java接
口不可以;这大概就是 Java抽象类独一的长处吧, 但这个优
点特别实用。 可以向抽象类里加入一个新的详尽方法,
全部的子类都自动获得这个方法;但
Java接口里加入一个
新方法,全部实现这个接口的类就没法成功经过编译,必要
手动给每个实现了该接口的类加上该方法的实现; 2、抽象
6
精选文档
类的实现只好由子类给出,也即该实现只好在抽象类定义的
7
精选文档
继承的等级构造中;所以抽象类作为种类定义工具的效能大
打折扣。 Java接口,任何一个实现了一个 Java接口所规
定的方法的类都可以拥有这个接口的种类,而一个类可以实
现随意多个
Java接口,从而这个类就有了多各种类。 以
上看出:Java接口是定义混杂种类的理想工具,混杂类表示
一个类不不过拥有某个主种类的行为,并且拥有其余的次要
行为。
3、联合1、2点中抽象类和 Java接口的各自优势,
具精典的设计模式就出来了:申明种类的工作仍旧由Java接口肩负,但是同时给出一个Java抽象类,且实现了这个接口,而其余同属于这个抽象种类的详尽类可以选择实
现这个Java接口,也可以选择继承这个抽象类, 也就是说在
层次构造中,Java接口在最上边,而后紧跟着抽象类,这下两个的最大长处都能发挥到极至了。这个模式就是“缺省适
配模式”。
依据必定的命名规范:
和抽象类的整体原则
窗口站在外界使用者
系统能供给哪些服务
在Java语言API顶用了这类模式,并且全都
Abstract+接口名。
:1、用接口作为系统与外界交互的
(另一个系统)的角度,接口向使用者承诺
,站在系统自己的角度
,接口拟定系统必
.经过接
A经过系统B进
七.使用接口
须实现哪些服务,接口是系统中最高层次的抽象种类
口交互可以提升两个系统之间的送耦合系统
行交互,是指系统A接见系统B时,把引用变量申明为系统B中的接口种类,该引用变量引用系统B中接口的实现类的实
8
精选文档
例。
publicinterfaceB
{
}
publicclassC
{
Ba=new
implementsB
{
}
publicclassA
,Java接口一旦制
C(); }
2、Java接口自己一定特别稳固
定,就不一样意随遇更为,不然对外面使用者及系统自己造成影响3、用抽象类来定制系统中的扩展点,抽象类来完成部分实现,还要一些功能经过它的子类来实现
9
版权声明:本文标题:在java中什么是接口接口特点是什么? 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1704956826a467980.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论