this与super
区别 | this | super |
---|---|---|
访问属性 | this.属性名。只能访问当前对象所拥有的属性(包括继承来的属性,如果继承的属性名和子类对象相同,若不指定则调用子类的,调用父类的需要显示指定:super.属性名) | super.属性名。可以访问父类非私有的属性 |
访问方法 | 与访问属性类似 | 与访问属性类似 |
调用构造器 | this(有参或无参)调用本类中有参或无参的构造函数,必须放在构造函数的第一句 | super(有参还是无参)调用父类的有参或是无参的构造方法,必须放在构造方法的第一行(注意:在同一个构造函数里不能同时出现this()和super()) |
指代 | this是当前对象在堆空间的引用地址 | super是当前对象的父类特征的引用 |
作为参数 | this可以作为参数,它代表了当前对象的引用 | super不可以 |
使用环境 | 不可以在static环境中使用 | 不可以在static环境中使用 |