this关键字
- 一个对象一个this。
- this是一个变量,是一个引用,this保存当前对象的内存地址,指向自身。所以,严格意义上说,this代表的就是“当前对象”。
- this存储在堆内存当中对象的内部。
- this只能使用自实例方法中,谁调用这个实例方法,this就是谁。
- this.大部分情况下是可以省略的。但是用来区分局部变量和实例变量的时候不能省略。
- this可以使用在实例方法中,也可以使用在构造方法中,不可以使用在静态方法中。
- this()这种语法只能出现在构造方法第一行,表示当前构造方法调用本类其他的构造方法,目的是代码复用。
super关键字
- super能出现在实例方法和构造方法中。
- super不能使用在静态方法中。
- super大部分情况下是可以省略的。
- super什么时候不能省略?
父类和子类中有同名属性,或者方法,想在子类中访问父类的,不能省略。 - super()只能出现在构造方法的第一行,通过当前的构造方法去调用“父类”中的构造方法,目的是:创建子类对象的时候,先初始化父类的类型特征。