java中的super和this关键字

java中的super和this关键字,第1张

在java里面super和this关键字的相同点是它们两个都是放在构造方法的第一行,其它行可以自己指定,构造函数只能调用一次,this()和super()都是指对象,所以不能在static环境里面使用,包括static变量,static方法,static语句块等都属于static环境。

不同的地方在于this本质是一个指针,而super是一个关键字。super()是在本类中调用父类的构造方法,this是在本类中调用其它的构造方法。this和super的常见用法都有三种,也比较类似,区别在于this是和当前类有关,super是和父类有关,常见用法如下:

this的三种常见用法:

1.this相当于指向当前对象这是this的普通的引用。

2.this用来区分相同的形参与成员名字,若不相同可以不用this区分。

3.引用当前类的构造函数。

super也要三种用法:

1.相当于指向父类对象的引用,这点与this比较像,只是this是指向当前对象,super指向父类对象,通过这种方式,我们可以通过super.成员的方式引用父类的成员。

2.子类与父类具有相同名字的成员变量或者方法时,我们可以用super进行区分。

3.当我们需要调用子类自身其它的一个构造函数时,使用this,但是如果我们想要调用父类的构造函数,需要使用super。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/798812.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-06
下一篇 2022-05-06

发表评论

登录后才能评论

评论列表(0条)

保存