this是Java的关键字,用于表示对象自身的引用值
作用
1、区分成员变量和局部变量。
2、简化构造方法的调用。
3、this引用允许相同的实例方法为不同的对象工作。
注:在类的static方法中,是不能使用this的。
注:在一个类中写了多个构造方法,想在一个构造方法中调用另一个构造方法可用this关键字来构成一个特殊的“显示构造方法”调用语句。该语句必须是构造方法体中的第一条语句。
例如:
class Cat{
int age=5;
String name="hhh";
public Cat()
{
//调用带有int参数的那个构造方法
this(7);
System.out.println("age ="+age+",name="+name);
}
public Cat(int age)
{
this.age=age;
System.out.println("this.age ="+age+",name="+name);
}
}
super
作用:用来访问父类中的数据成员(子类重写的、隐藏的或者是未做任何处理的。)
调用方法:
class A
{
int a = 3;
int b;
A()
{
b=0;
}
public void show()
{
System.out.println("Print show!");
}
}
class B extends A
{
B()
{
//调用父类的无参构造函数
super();
}
public void sshow()
{
//调用父类中的成员变量
System.out.println(super.a);
//调用父类中的成员方法
super.show();
}
}
super和this在构造体方法中的引用
super:调用父类的某个成员。
this:调用本类中的某个成员。
注:在构造方法中super和this不能共存,并且无论是只有super还是this都只能有一句。super和this都必须放在构造方法体中的第一句。