this与super
1. this与super访问普通成员
1.1 this和super访问注意事项
调用普通成员:
this.成员变量 可以访问本类对象的成员变量
super.成员变量 可以访问父类的成员变量
this.成员方法() 可以访问本类对象的成员方法
super.成员方法() 可以访问父类的成员方法
子类方法中
访问子类自身的成员用this.
访问父类的成员super.
就近原则:局部 > 本类成员 > 父类成员
2 super访问父类构造方法
2.1 super调用父类构造方法的格式
调用构造方法:
this(其他参数) 可以访问本类其他的构造方法
super(其他参数) 可以访问父类其他的构造方法
默认子类调用父类构造方法:
子类的每个构造方法中均有默认的super(),调用父类的空参构造。手动调用父类构造会覆盖默认的super()
3 this访问子类构造方法
在子类构造中使用this() 或 this(参数类型 参数值…)的方法可以调用本类中的其他构造方法。但是最终都是要调用父类的构造方法,完成父类成员的初始化。
总结
super 关键字
1.super 父类的关键字
2.super()、super(形参) 在调用父类的构造方法
必须在第一行,即使super()没有提供,也默认存在在第一行、
3.super.成员属性 执行父类的属性
4.super.成员方法() 执行父类的方法this关键字
1.this 当前正在使用的对象,当前正在创建的对象
2.this()、this(形参) 调用本类中其它的构造方法,但是不可以相互之间调用
3.this.成员属性 调用本类的成员变量
4.this.成员方法() 调用本类的成员方法关联关系与依赖关系
关联关系 为了提高代码的复用率
1.代码层面:一个类作为另外一个类的属性类型存在
2.has-a 有
3.一对一 、 一对多Phone[] phones、List<Phone> list
4.强关联(组合关系)、弱关联(聚合关系)
5.单向关联、双向关联依赖关系 为了代码复用性
1.代码层面 一个类作为另外一个类的方法形参类型存在
2.use-a 用
3.具备临时性,偶然性