当先锋百科网

首页 1 2 3 4 5 6 7

Java中的this关键字是一个引用,它指向当前对象的地址。它可以用于调用当前对象的任何方法或访问当前对象的任何属性。在重写方法时,this关键字非常重要。

public class A {
public void method() {
System.out.println("A");
}
}
public class B extends A {
public void method() {
System.out.println("B");
this.doSomething();
}
public void doSomething() {
System.out.println("B doSomething");
}
}
public class Main {
public static void main(String[] args) {
A a = new B();
a.method();
}
}

在上面的例子中,B类继承自A类并重写了method方法。在B的method方法中,我们调用了doSomething方法,并使用了this关键字。这里的this指的是当前对象B,而不是父类A。

在运行时,我们创建了一个B对象,并将其赋给A类的引用。然后我们调用了a.method(),它会调用B类中重写的method方法。在该方法中,先输出“B”,然后再调用了doSomething方法,输出“B doSomething”。

在这个例子中,this关键字非常重要。如果我们不使用this关键字而直接调用doSomething方法(即不写this.doSomething()而是直接写doSomething()),那么方法会调用父类A中的doSomething方法而不是B中的方法。