super和this的作用
时间: 2024-10-16 20:09:47 浏览: 20
java基础知识 super和this使用解析
`super` 和 `this` 都是Java关键字,在类内部用于引用特定的对象,它们各有其用途:
1. `super`: 当子类构造函数需要访问并初始化父类的属性或者调用父类的构造函数时,可以使用`super()`. 它代表的是创建当前对象的那个父类实例。例如,如果你有`Person`父类和`Student`子类,学生在初始化时可能会先调用父类的构造器:
```java
public Student(String name) {
super(name); // 调用父类的构造器传入name
this.age = 18; // this指向当前对象,设置age属性
}
```
2. `this`: 在Java中,`this`通常用于区分局部变量、成员变量以及在同一作用域内的其他同名变量。例如,当你在方法中有两个同名参数时,可以用`this`来明确指定你要操作的是哪个参数:
```java
void method(String s) {
if (s.equals("hello")) {
System.out.println(this.s); // 这里指代成员变量s,而不是方法参数
} else {
System.out.println(s); // 这里指代方法参数s
}
}
```
阅读全文