Java中的继承、接口与Lambda表达式详解
1. 继承与接口基础
1.1 继承关系中的类
在继承关系里,存在一般类和特殊类。一般类被称为超类(superclass),特殊类则是子类(subclass)。比如,若“Mercedes”是子类,“car”就可以作为它的超类。
1.2 接口的作用
接口(Interfaces)只包含抽象方法,用于规定类的行为。所有类都直接或间接地继承自 Object 类。当一个类实现接口时,必须提供接口中所有非默认方法,且方法的签名和返回类型要与接口指定的完全一致。
1.3 常见错误
在学习继承和接口相关知识时,有一些常见错误需要避免:
- 尝试从子类直接访问超类的私有成员。子类不能直接访问超类的私有成员,必须调用超类的公共或受保护方法来间接访问。
- 当超类没有默认构造函数或无参构造函数时,忘记显式调用超类的构造函数。此时,子类的构造函数必须显式调用超类的某个构造函数。
- 本想调用超类的其他构造函数,却让超类的无参构造函数被隐式调用。如果子类的构造函数没有显式调用超类构造函数,Java会自动调用超类的无参构造函数。
- 调用被重写的超类方法时,忘记在方法调用前加上 super 关键字。若不这样做,会调用子类版本的方法。
- 忘记给类成员指定访问修饰符。若未指定,类成员默认具有包访问权限,即同一包中的任何方法都可以访问该成员。
- 为抽象方法编写方法体。抽象方法不能有方法体,必须在子类中被重写。
- 忘记在抽象方法的方法头末尾加上分号。抽象方法头没有方
超级会员免费看
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



