在 Java 中,this 和 super 是兩個特殊的關鍵字,它們分別表示當前對象和父類對象。
this 關鍵字用于引用當前對象的成員變量、成員方法等,可以將其理解為當前對象的“自我指針”,在方法中通過 this 訪問成員變量和成員方法時,會自動搜索當前對象的成員,因此 this 關鍵字更多的是在類的方法內使用。
public class Person { private String name; public Person(String name) { this.name = name; //使用this關鍵字訪問當前對象的成員變量 } public String getName() { return this.name; //使用this關鍵字訪問當前對象的成員方法 } }
super 關鍵字用于訪問父類的成員變量、成員方法等,可以將其理解為當前對象的“父級指針”,在子類里使用 super 關鍵字可以調用父類的方法和屬性,因此 super 關鍵字更多的是在繼承關系中使用。
public class Student extends Person { private int grade; public Student(String name, int grade) { super(name); //使用super關鍵字訪問父類的構造方法 this.grade = grade; //訪問子類的成員變量 } public void display() { System.out.println("Name: " + super.getName()); //使用super關鍵字訪問父類的成員方法 System.out.println("Grade: " + this.grade); } }
總體來說,this 和 super 關鍵字在 Java 中是很有用的,能夠讓我們更方便地訪問當前對象和父類對象的成員屬性、方法等,使用時需要根據具體情況選擇合適的關鍵字。