1.继承
1.1 基本概述
概述: 所谓的继承,就是生活中的"继承". 生活中"子承父业,儿子继承父亲的财产", Java中"子类继承父类代码"
格式:
public class 子类 extends 父类{}
注意:
1.继承必须是合理的.
2.Java只支持单继承,不支持多继承,但支持多层继承.
1.2 优缺点
优点:
提高了代码的复用性(其实就是不少代码).
提高了代码的维护性(其实就是改起来方便).
缺点:
增强了代码的耦合性(好的坏的都必须继承).
1.3 成员特点
成员变量: 就近原则
成员方法: 就近原则
构造方法: 子类构造方法会默认调用父类的无参构造方法.如果父类没有无参,则报错. 如果不想报错,父类提供无参构造或子类手动调用有参构造.
1.4 super关键字
概述: super和this用法一样. this代表本类,super代表父类
用法:
this.成员变量 -> 获取本类成员变量 super.成员变量 -> 获取父类成员变量
this.成员方法() -> 调用本类成员方法 super.成员方法() -> 调用父类成员方法
this(...) -> 调用本类构造方法 super(...) -> 调用父类构造方法
2.方法重写
概述: 当子类中出现和父类中一模一样的方法,那这两个方法之间的关系就称之为"方法重写".也叫做"方法覆盖,方法覆写"
意义: 当子类对父类方法不满意时,可以选择重写该方法
3.访问修饰符
3.1 权限修饰符
private: 只能在本类内部访问,除了当前类,就不能用了.
缺省(不写): 只能在同一个包中使用.
protected: 在同一个包中,或在子类中,可以使用
public: 在任何地方都可以使用
3.2 状态修饰符
final: 最终的
static: 静态的
abstract: 抽象的
4.状态修饰符
4.1 final
概述: final代表最终的,不可改变的. final可以修饰"变量,方法,类";
作用:
修饰类: 该类不允许被继承.
修饰方法: 该方法不允许被重写.
修饰变量: 变量不允许修改.
扩展:
final修饰基本数据类型变量: 值不允许修改.
final修饰引用数据类型变量: 内存地址不允许