The Java Programming Language4th读书笔记-第四章 接口

本文深入探讨了接口中常量、方法、嵌套类和嵌套接口的特性,阐述了接口成员的公共性及访问控制,揭示了接口继承中字段隐藏的现象,并详细解释了标记接口的作用。同时对比了接口与抽象类的区别,提供了构建软件设计的两种不同策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 接口可以声明3中类型的成员:
    • 常量(字段),隐式地是public,static,final的,必须拥有初始器;
    • 方法;
    • 嵌套类和嵌套接口;
  2. 所有的接口成员都隐式地是公共的,但是按照惯例,public修饰符被省略掉了。在接口中声明非公共成员是毫无意义的,真正有意义的是我们可以使用接口自身的可访问性来控制对接口成员的访问;
  3. 除注解外,在接口的方法声明上不允许使用其他任何方法修饰符;
  4. 接口继承也会有字段隐藏的情况;
  5. 标记接口(marker interface):没有常亮,也并未声明任何方法,只是将一个类标记为具有某些通用属性。接口cloneable,Serializable,Externalizable,java.rmi.Remote,java.awt都是标记接口;标记接口对实现他们的类的行为有着深远影响;
  6. 接口和抽象类之间有两点主要的差异:
    • 接口提供了一种多重继承的形式,因为我们可以实现多个接口。而类只能扩展一个其他的类,即使该类只有抽象方法也是如此;
    • 抽象类可以有部分的实现、protected部分、static方法,等等,但接口只能有public的常量和没有任何实现的public方法 ;
  7. 有两种构建软件设计的方式:一种是使其尽量简单,直至明显地没有任何缺陷;另一种是使其尽量复杂,直至没有任何明显地缺陷;–C.A.R. 霍华德(图灵的主)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值