java中this和super的使用方法,举例说明
时间: 2024-02-03 14:12:02 浏览: 144
在Java中,this和super都是关键字,分别表示当前对象和父类对象。它们的使用方法如下:
1. this关键字
this关键字表示当前对象,它可以在类的方法中使用。一般用于区分成员变量和局部变量之间的区别,或者在一个方法中调用该类的另一个构造方法。
举个例子,假设有以下代码:
```
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public void printInfo() {
System.out.println("Name: " + this.name);
System.out.println("Age: " + this.age);
}
}
```
在printInfo方法中,我们使用了this关键字来表示当前对象,即Person对象。这样就可以访问到该对象的成员变量name和age。
2. super关键字
super关键字表示父类对象,它可以在子类中使用。一般用于在子类中调用父类的构造方法或者访问父类的成员变量和方法。
举个例子,假设有以下代码:
```
public class Animal {
protected String name;
public Animal(String name) {
this.name = name;
}
public void eat() {
System.out.println("Animal eating...");
}
}
public class Dog extends Animal {
private String breed;
public Dog(String name, String breed) {
super(name);
this.breed = breed;
}
public void bark() {
System.out.println("Dog barking...");
}
}
```
在Dog类的构造方法中,我们使用了super关键字来调用父类Animal的构造方法,从而初始化了父类的成员变量name。另外,在Dog类中,我们也可以通过super关键字来访问父类Animal的成员方法和成员变量。例如,在bark方法中,我们可以这样调用父类的eat方法:
```
public void bark() {
super.eat();
System.out.println("Dog barking...");
}
```
这样就会先调用父类的eat方法,然后再输出Dog barking...。
阅读全文