一.关键字super
super 和 this 之间的区别:
this 指代当前创建的对象
- 调用本类其他构造器: 构造器的首行 this(参数列表)
- 区分同名变量问题(局部和成员) this.
super 指代父类对象
- 调用父类构造器
- 默认调用父类的空构造
- 调用父类的其他构造器需要显示使用 super(参数列表)
- 要使用在构造器的首行
super使用:
1:在子类中使用父类被覆盖的方法(子类重写父类方法会覆盖父类方法)
2:在子类中子类中使用父类被覆盖的属性(很少使用此类)
3:在子类中调用父类的构造器:对比this和super调用构造器:this:调用的是当前对象的重载的构造器
语法:this(参数); //放置在构造器的第一行代码super:调用父类的构造器
语法:super(参数); //放置在构造器的第一行代码
二. final 最终的
1.被final修饰的变量为常量
变量的数据类型如果是基本数据类型: 存储的数据值不能改变
变量的数据类型如果是引用数据类型: 存储对象的地址不能改变,但是对象内存中的属性值可以改变
2.被final修饰的方法不能被重写
3.被final修饰的类不能被继承