【java面向对象】细说this、super的使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qsbbl/article/details/82774971

今天小编来说说this、super这2个关键词的使用。

this

this代表对当前所在类的引用。比如在这个demo中,this代表对Student类的引用,有了this,就能调用Student的成员变量和成员方法了。
在这里插入图片描述
this解决了成员变量被隐藏的问题,为什么这么说呢?
如果没有this,它会提示“对变量名的赋值没有作用”。
在这里插入图片描述
当局部变量和成员变量名称一样时,在方法中使用的是就近原则,也就是说两个“name”都是指局部变量,把局部变量的值赋给局部变量,怪不得提示赋值没有作用呢!

super

super的作用就是对父类对象的引用。比如在这个demo中,子类对父类的方法进行了重写,但子类依旧能调用父类的方法。
父类-People类
在这里插入图片描述
子类-Student类
在这里插入图片描述
测试类-Test类
在这里插入图片描述
输出结果:
在这里插入图片描述
以上是对super作用于类的成员方法时的用法展例,下面说说在成员变量中是怎么用的。
父类-Father中:
在这里插入图片描述
子类-Son中,分别在成员变量和局部变量中都重新定义了age,那怎么调用这3个age呢?
在这里插入图片描述
测试类-Test中:
在这里插入图片描述
执行结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qsbbl/article/details/82774971