为了账号安全,请及时绑定邮箱和手机立即绑定

【学习打卡】第6天 java体系课

标签:
活动

课程名称:Java工程师2022版
课程章节:Java多态(下)

课程内容

JAVA接口的概念、定义、接口成员(抽象方法和常量)、(默认方法和静态方法)

接口中,重名方法和常量的处理问题




课程收获:

接口定义:

  • java中通过接口实现行为能力的关联

  • public interface IPhoto //定义接口方法

  • public class Camera implements IPhoto用类实现接口方法,必须重写该接口方法

  • “规定一个类必须做什么,但是不管这个类怎么做”

  • 接口不关心这些类的内部数据,也不关心这些类里方法的实现细节,它只规定这些类里必须提供某些方法

  • 接口不是类,是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为

  • 接口不能实例化对象,可以声明接口变量,并指向实现类,只能调用类中的定义的实现接口的函数,不能调用接口中没有定义的函数。

  • 一个Java文件中可以存在多个类,多个接口,但是只能存在一个public修饰的类或接口,且此时文件名需要与public修饰的类或接口同名。

接口成员(方法和属性):

  • 通常是public或者是默认的访问权限

  • 接口的方法其实是 抽象方法,但是abstract可以省略,抽象方法可以不写访问修饰符,但默认是public

  • 当类实现接口时,需要去实现接口中的所有抽象方法,否则需要将该类设置为抽象类

  • 接口中可以包含常量,默认public static final(调用:接口.常量),接口中常量必须有默认值

  • 实现类中可以定义和接口中重名的常量时,当程序中使用接口引用指向实现类的时候,调用的时接口中的常量

默认方法:

  • (public) default,可以带方法体(jdk1.8新增),可以在实现类中重写,并可以在重写方法中通过接口的引用调用

  • 也可以在实现类中重载,但无法通过接口引用访问

  • 应用场景:如果希望实现类能更多的直接应用接口中的方法

静态方法:

  • (public)static,可以带方法体(jdk1.8新增),不可以重写

  • 在实现类中需要通过接口名进行访问,但无法重写重载,可以存在相同格式的静态方法,但二者独立存在

  • 应用场景:希望更多的接口扩展方法是支持在无实例对象产生的情况下调用

跨包:

  • 接口可以在不同的包中创建,可以根据业务设计需要单独创建接口包。

  • 跨包调用时,需设置可访问接口为public访问权限,此时只需参照之前跨包调用的方式,即import包名.*;或者import包名.接口名;即可。

继承关系中的接口:

  • 当父类未实现接口中全部方法时,则父类需要设置为抽象类,子类若不想继续抽象,则需要实现相关未实现方法,否则将继续为抽象类。

  • 当父类已实现了接口中所有方法,子类中若无特殊需要,无需重新实现接口中方法。

https://img1.sycdn.imooc.com//62efe01e0001e41b11200624.jpg





点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消