小白学JAVA《十三》--- 接口

一、概念
(1)访问修饰符:只能用public
来源于外部给类附加的功能
(2)接口无法实例化,只能由实现类来实例化
(3)关键字:interface/implements
(4)不允许非抽象方法存在,接口中只能允许抽象方法存在
二、特点
(1)接口文件最后同样也会被编译器编译成 服务接口.class 字节码文件
(2)接口和抽象类一样,同样不能被实例化
(3)接口中的所有方法,都只能定义成抽象方法,不能拥有方法体
(4)接口中的所有方法,访问修饰符默认就是public。可以不写,即使不写也会默认
(5)接口中不能拥有构造器,以及初始化块(静态初始化块)
(6)接口中不能定义“成员变量”,只能定义公开的,并且是静态常量
6.1在定义常量时,可以写成public、static、final、,也可以写成static fainal,也可以写final.甚至可以去掉final.
(7)接口中可以定义无限个常量,可以定义无限的抽象方法
(8)接口在使用上来讲,不能被实例化,所有的抽象方法都必须由接口的实现类来实现
(9)类不能继承接口,只能实现接口,类只能单继承,但是可以多实现。接口之间采用“逗号”间隔
(10)将设计和实现分离,对外隐藏了实现
(11)面向接口编程是OOP的核心
三、使用接口的原则
(1)使用接口解决多继承
(2)使用接口为外部类添加功能
(3)以面向对象的角度考虑,将一个类与身自来的特征和行为和依赖于外部的特征和行为分离,让类尽可能的丰富,让我们在设计程序的时候,不再关注具体的类,而是分离关注的是类上面拥有哪些接口所定义的能力,从而做到程序设计时,类类的直接关系,变换为类-接口-类,这种变换关系。被称之为“解耦”
(4)JDK在1.8以后,出现的新的特性
4.1接口中可以,添加非抽象方法,但是需要使用default关键字来声明非抽象方法,但此时的default已经不再是一个访问修饰符,而真正的访问修饰符还是public
4.2接口中可以使用static声明静态方法,但是必须要有方法体的实现
四、接口和抽象类的区别
(1)接口里所有的方法都是abstract的,所有的属性都是public. static.final
(2)抽象类是接口的部分实现,既能定义abstract方法,也能定义普通方法和属性,比接口更加灵活
(3)正确选择使用2者的时机
(4)定义
4.1 接口:interface 抽象:abstract
(5)设计
(1)抽象是与生俱来的
(2)附加增加的

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值