概述
Java中this表示当前类的引用。在类的构造方法重载中,如果想要在一个构造方法中调用另一个构造方法,可以使用this()的方式,当前提是this()必须放在该构造方法的最前面,在this()之前不能有任何语句。例如:
public class Test
{
public static void main(String [] args)
{
Temp temp = new Temp(100);
System.out.println(temp.val);
}
}
class Temp
{
int val;
public Temp()
{
System.out.println("Temp1");
}
public Temp(int val)
{
this();
this.val=val;
System.out.println("Temp2");
}
}
结果为
temp1
temp2
100
同理,super关键字表示对父类对象的引用,子类的构造函数默认调用父类中不带参数的构造函数,当子类的构造函数想要调用父类其他构造函数时,可以使用super(parameter)显示的调用相应的谷类构造函数。同样它必须放在子构造函数的最前面。例如:
public class Test
{
public static void main(String [] args)
{
B b = new B();
}
}
class A
{
int val;
public A()
{
System.out.println("A1");
}
public A(int val)
{
this.val = val;
System.out.println("A2");
}
}
class B extends A
{
public B()
{
super(100);
System.out.println("B");
}
}
此外,当子类中的方法fun()重写了父类中的方法fun()时,可以通过super.fun()的方式调用父类的fun()方法。
最后
以上就是无辜衬衫为你收集整理的java -- this和super关键字的全部内容,希望文章能够帮你解决java -- this和super关键字所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复