java语法糖--接口方法

接口的默认方法(1)
1、接口的方法都是没有实现的公开的
2、java8推出的默认方法/静态方法(都带实现的),为Lambda表达式提供支持

接口的默认方法
1、以default关键字标注,其他的定义和普通函数一样
2、默认方法不能重写Object中的方法
3、实现类可以继承/重写父类接口的默认方法
4、接口可以继承/重写父类接口的默认方法
5、当父类和父类接口都有默认方法,子类继承父类的默认方法,这样可以兼容JDK7以前的代码
6、子类实现了2个接口(均有同名同参数的默认方法),那么编译失败,必须在子类中重写default方法

接口的静态方法
static标注

静态方法属于本接口的,不属于子类/子接口,不可传给后代的类/ 接口
子类/子接口没有基础该静态方法,只能通过所在的接口名来调用

默认方法可以调用非静态/静态私有方法
静态方法只能调用静态私有方法
所有私有方法只能在当前接口内使用

接口和抽象类
都是抽象的,都不能实例化,即不能被new
都可以有实现方法
都可以不需要继承者实现所有的方法

抽象类只能继承一个,接口乐园实现多个
接口的变量默认是public static final,且必须有初值,子类不能修改,而抽象类的变量默认是default,子类可以继承修改
接口没有构造函数,抽象类有构造函数
接口没有main函数,抽象类可以有main函数
接口有public/default/private 的方法,抽象类有public/private/protected 不写关键字的方法

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值