JAVA:什么是接口,它的主要作用是什么?

JAVA:什么是接口,它的主要作用是什么?... JAVA:什么是接口,它的主要作用是什么? 展开
 我来答
nanwang21
推荐于2017-09-18 · TA获得超过2943个赞
知道大有可为答主
回答量:1220
采纳率:82%
帮助的人:243万
展开全部
java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。

1、两种含义:一,Java接口,Java语言中存在的结构,有特定的语法和结构;二,一个类所具有的方法的特征集合,是一种逻辑上的抽象。前者叫做“Java接口”,后者叫做“接口”。

2、接口实现和类继承的规则不同,为了数据的安全,继承时一个类只有一个直接父类,也就是单继承,但是一个类可以实现多个接口,接口弥补了类的不能多继承缺点,继承和接口的双重设计既保持了类的数据安全也变相实现了多继承。

3、Java接口本身没有任何实现,因为Java接口不涉及表象,而只描述public行为,所以Java接口比Java抽象类更抽象化。但是接口不是类,不能使用new 运算符实例化一个接口。如 x=new comparable(......);//这个是错误来的。但是可以声明接口变量Comparable x; //这是允许的。

4、Java接口的方法只能是抽象的和公开的,Java接口不能有构造器,Java接口可以有public、静态的和final属性。即接口中的属性可以定义为 public static final int value=5;

5、这种分割体现在接口常常代表一个角色,它包装与该角色相关的操作和属性,而实现这个接口的类便是扮演这个角色的演员。一个角色由不同的演员来演,而不同的演员之间除了扮演一个共同的角色之外,并不要求其它的共同之处。

6、范例
定义接口格式:
[public]interface 接口名称 [extends父接口名列表]
{
//静态常量
[public] [static] [final] 数据类型变量名=常量值;
//抽象方法
[public] [abstract] [native] 返回值类型方法名(参数列表);
}
实现接口格式:
[修饰符] class 类名[extends 父类名] [implements 接口A,接口B,···]
{
类成员变量和成员方法;
为接口A中的所有方法编写方法体,实现接口A;
为接口B中的所有方法编写方法体,实现接口B;
}
百度网友37bdc142c
2008-11-09 · TA获得超过812个赞
知道小有建树答主
回答量:1229
采纳率:0%
帮助的人:490万
展开全部
接口比如一个水龙头,你打开打就能出水,你不必知道水是从哪里来,打开能用就行了。和项目里相比,你要写的方法先用接口定义好,让他的子类来实现里面的方法,调用的时候直接调用接口,不必知道他的过程
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ive134
2008-11-09 · 超过46用户采纳过TA的回答
知道答主
回答量:242
采纳率:0%
帮助的人:158万
展开全部
就是一个模具,一个规范,很多类可以继承它 而共同的特点接口已经规定好了,这些类只要实现各自的功能就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hideed
推荐于2017-10-06 · TA获得超过139个赞
知道答主
回答量:187
采纳率:0%
帮助的人:104万
展开全部
接口是用来规范类的,它可以避免类在设计上的不一致
这在多人合作的开发中犹为重要 ,
你象一个人,把他封装一个类对象,作为一个接口实现的话,一继承就能实现人的所有的属性和方法,并且重复多次的利用,就不用每次都自己写了,而某个人的某个行为与大多数人不同的话,就可以重写这个方法,要是普通类的话只能调用的不能重写,这就是接口的好处

在商业上说的话,你做一个项目,如果这个项目有专门的一套接口的话,只需要重写这些方法就可以了,所以说真正的JAVA高手都封装到接口,这是我们这些普通的程序员无法做到的,如果能做到把一个项目所有的都封装到接口的话,那你的工资就相当可观了,可能超出你的预测
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友ef10e91
2008-11-09 · TA获得超过1822个赞
知道大有可为答主
回答量:1223
采纳率:50%
帮助的人:1297万
展开全部
接口的意思“有一个”就是“has-a”。什么情况下使用接口呢?比方说防盗门是一个门,它有一个锁,这个门就要定义成一个抽象类,而锁就要定义为一个接口。就是说功能方面的东西要定义为接口。而接口的产生是为了解决多继承的问题,如一个防盗门有一个锁还有一个观察窗,如果使用抽象类实现的话就要继承三个类,一个门、一个锁、一个观察窗。而java里面是不能多继承的,所以就出现了接口的概念,你可以继承门,然后实现锁和观察窗的接口,实现防盗门的功能。
不知道你理解没有?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式