this和super什么含义?如何使用?(解释并写出相关代码)—20分
时间: 2023-11-27 11:05:26 浏览: 14
`this` 关键字在 Java 中代表当前对象的引用。它可以用于在方法内部引用当前对象的成员变量和方法。
`super` 关键字在 Java 中代表父类对象的引用。它可以用于在子类中调用父类的成员变量和方法。
以下是使用 `this` 和 `super` 的示例代码:
```java
class Animal {
String name;
public Animal(String name) {
this.name = name;
}
public void eat() {
System.out.println(name + " is eating.");
}
}
class Cat extends Animal {
int age;
public Cat(String name, int age) {
super(name);
this.age = age;
}
public void meow() {
System.out.println(name + " is meowing.");
}
}
public class Main {
public static void main(String[] args) {
Cat cat = new Cat("Tom", 2);
cat.eat(); // Tom is eating.
cat.meow(); // Tom is meowing.
}
}
```
在上面的代码中,`Animal` 是一个父类,`Cat` 是一个子类。`Cat` 类继承了 `Animal` 类,并添加了一个 `age` 属性和一个 `meow` 方法。
在 `Cat` 类的构造方法中,我们使用了 `super` 关键字来调用父类的构造方法,并传递了 `name` 参数。在 `Cat` 类的 `meow` 方法中,我们使用了 `this` 关键字来引用当前对象的 `name` 属性。
在 `Main` 类的 `main` 方法中,我们创建了一个 `Cat` 对象,并调用了它的 `eat` 和 `meow` 方法。`eat` 方法是从父类继承而来的,`meow` 方法是子类自己定义的。