接口以及其细节

基本介绍:

接口就是给出一些没有实现的方法,封装到一起,到某个类要使用的时候,再根据具体情况把这些方法写出来。

语法:

interface 接口名{

//属性

//方法(1.抽象方法。2.默认实现方法。3.静态方法)

}

class 类名 implements 接口{

自己属性;

自己方法;

必须实现的接口的抽象方法

}

注意:

1)在jdk7.0之前,接口中的所有方法都没有方法体,即都是抽象方法,在接口中的抽象方法可以省略abstract关键字

2)在jdk8.0之后,接口类可以有静态方法,默认方法(利用关键字default进行修饰),也就是说接口中可以有方法的具体实现

接口细节:

a:接口不能被实例化

b:接口中所有的方法是public方法,接口中抽象方法,可以不用abstract修饰

c:一个普通类实现接口,必须将该接口的所有方法进行实现

d:抽象类实现接口,可以不用实现接口的方法

e:一个类可以同时实现多个接口

f:接口中的属性,只能是final的,而且是public static final 修饰符。比如:int a=1;实际上是:

public static final int a=1;(必须初始化)

g:接口中属性的访问形式:接口名.属性

h:一个接口不能继承其他的类,但可以继承多个别的接口

i:接口的修饰符只能是public和默认,这点和类的修饰符是一样的

实现接口与继承类:

接口和继承解决的问题不同

继承的价值主要在于:解决代码的复用性和可维护性

接口的价值主要在于:设计。设计好各种规范(方法),让其他类去实现这些方法。即更加灵活

接口比继承更加灵活

接口比继承更加灵活,继承是满足is-a的关系如(cat-》animal),而接口只需要满足like-a(如人可以学习游泳)的关系

接口在一定程度上实现代码解耦【即接口规范性+动态绑定机制】

接口的多态特性:

1)多态参数

在E:\java程序设计\class\src\Interface_中的USB案例中。USB usb既能够接收Phone对象,又能接收Camera对象,就体现了接口的多态(接口引用可以指向实现了接口的类的对象)

2)多态数组

usb为接口,MyCamera与MyPhone实现了usb接口,usb有一个方法work(),MyPhone有有一个独自的方法call()。利用instanceof判断当前对象的运行类型,(编译类型左,运行类型右)  、

 

3)接口存在多态传递现象

我将其理解为自下而上的层层super().

 小结:访问接口属性利用         接口名.属性名    ;访问父类属性利用        super.属性名

类的五大成员:1)属性2)方法3)构造器4)代码块5)内部类,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值