java中this和super的用法及区别

this

  • 用法1:代表当前对象本身

  • 用法2:方法形参和类成员变量重名,用this进行区别

class demo{
  private int age = 10;
  
  public int getAge(int age){
   this.age = age;
   return this.age;
  }
}
  • 用法3:引用构造函数

这个和 super 放在一起讲,见下面。

super

  • 用法1:引用父类成员变量

可用 super.xxx 来引用父类的成员

  • 用法2:子类调用父类方法或变量

调用变量前需要先引用 父类方法:

class father{
	String name;
	void eat(){
		name = "666";
	}
}
class son extends father{
	super.eat();
	System.Out.println(super.name);
}

不调用方法只调用变量的话,变量值为null

this、super引用构造函数

必须写在构造函数的第一条

无参数时,表示调用构造函数

有参数时,表示调用具有相同参数的构造函数

super():引用父类无参构造函数

super(参数1,参数2):引用父类相同形参的构造函数

this():引用本类无参构造方法

this(参数1,参数2):引用本类具有相同形参的构造方法
posted @ 2020-12-10 20:59  崩天的勾玉  阅读(306)  评论(0编辑  收藏  举报