this指向当前对象,用于访问其方法和属性,常用于构造函数中;super指向父类,用于调用父类方法或访问其属性,常用于重写父类方法或访问未被覆盖的属性。
Java 中 this 和 super 的区别
this 和 super 都是 Java 中的关键字,它们用于访问类的方法和属性。
this
-
this
关键字用于引用当前对象。 - 它允许您访问当前对象的方法和属性,而无需显式指定对象名称。
- 经常用于构造函数中,以便初始化对象状态。
super
-
super
关键字用于引用父类。 - 它允许您调用父类的方法和访问父类的属性。
- 经常用于重写父类方法或访问父类未被子类覆盖的属性。
主要区别
特征 | this | super |
---|---|---|
用途 | 引用当前对象 | 引用父类 |
作用域 | 当前类 | 父类 |
语法 | this.propertyName/methodName | super.propertyName/methodName |
初始化 | 构造函数中初始化对象状态 | 访问父类的构造函数 |
重写方法 | 不能用于重写父类方法 | 可以用于重写父类方法 |
示例
<code class="java">class Parent { public void printName() { System.out.println("Parent"); } } class Child extends Parent { @Override public void printName() { System.out.println("Child"); } public void callSuper() { super.printName(); // 调用父类的方法 } }</code>
登录后复制
输出:
<code>Child Parent</code>
登录后复制
以上就是java中this和super的区别的详细内容,更多请关注叮当号网其它相关文章!
文章来自互联网,只做分享使用。发布者:代号邱小姐,转转请注明出处:https://www.dingdanghao.com/article/432734.html