DAY14面向对象高--接口

接口(interface)

实现接口,本质就是把接口方法实现

基本介绍

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

interface 接口名{

//属性

//方法

}

class 类名 implements 接口{

自己属性;

自己方法;

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

}

标注:

1,在JDK7.0前 接口里所有方法都没有方法体,即都是抽象方法

2,JDK8.0后接口类可以有静态方法,默认方法,也就是说接口中可以有方法的具体实现(默认方法需要使用default 关键字修饰)

 

 

在接口中,抽象方法可以省略 abstract 关键字

注意事项和细节讨论

1,接口不能被实例化

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

3,一个普通类实现接口,就必须将该接口的所有方法都实现。alt + enter快捷键

4,抽象类实现接口,可以不用实现接口的方法。

5,一个类同时可以实现多个接口

 

6,接口中的属性,只能是final类型的,而且是 public static final 修饰符。 比如接口中int a = 1; 实际上是 public static final int a = 1; (必须初始化)

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

8,一个接口不能继承其它的类,但是可以继承多个别的接口

interface A extends B,C{}

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

接口于继承类对比

简单理解:实现接口是对于Java单继承机制的一种补充

 

当子类继承了父类,就自动的拥有了父类的功能

如果子类需要扩展功能,可以通过实现接口的方式扩展

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

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

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

接口比继承更加灵活

接口比继承更加灵活,继承是满足is — a 的关系,而接口只需满足like — a 的关系

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

接口的多态特性

1,多态参数

在前面的Usb接口案例,Usb usb,既可以接收手机对象,又可以接收相机对象,就体现了 接口多态(接口引用可以指向实现了接口的类的对象)

2,多态数组

 

 

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

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值