Java中的this和super的应用


Java中的this和super的应用

今天动宝儿就与大家一起分享一下thissuper的应用,看看Javathissuper是怎么一回事,究竟如何理解回答。

对象的this引用:

Java提供了一this关键字,this关键字总是指向调用该方法的对象。根据this出现的位置的不同,this作为对象的默认引用有2种情形:

1.构造器中引用(指向)该构造器正在初始化的对象;

2.在方法中引用(指向)调用该方法的的对象。

this很大的作用就是让一个类中的一个方法,访问该类里的另一个方法或者实例变量,示例:

public void run()
{
 this.jump();  //jump()为另一个类的方法
}

 

 

this还可以,通过this调用另一个重载的构造器的初始化代码,this(parameter1,parameter2); 示例:

 

public Apple(){}public Apple(String name,String color)
{
    this.name = name;
    this.coloe = color;
}public Apple(String name,String color,double weight)
{
    //通过this调用另一个重载的构造器的初始化代码
    this(name,color);
    this.weight = weight;
}

 

 

this可以代表任何对象,谁调用this所在方法,this就代表谁。Java允许对象的一个成员直接调用另一个成员,可以省略this前缀,但是,如果方法里有个局部变量和成员变量同名,要在该方法里访问这个被覆盖的成员变量,必须使用this前缀。

super

当子类覆盖(重写)了父类方法后,子类的对象将无法访问父类中被覆盖的方法,但使用super关键字可以在子类中调用父类中被覆盖的方法。

如果子类定义了和父类同名的实例变量,则会发生子类实例变量隐藏(不是覆盖)父类实例变量的情形,可以在子类定义的实例方法中通过super关键字访问父类中被隐藏的实例变量。

 

注意:

this、super在调用构造器方面:this调用的是同一个类中重构的构造器,super调用的是父类的构造器。另外:不管是否使用super调用来执行父类构造器的初始化代码,子类构造器总会默认调用父类构造器一次。

 

以上就是动宝儿给大家带来的thissuper的应用,更多一手资讯尽在星辉。

 

上一篇:Java面向对象的构造器与数组对象
下一篇:星辉带你了解Java的特性多态

开班信息