ฉันอ่านคู่มือโปรแกรมเมอร์ของ Java ™ SCJP Certificationโดย Khalid Mughal
ในบทที่สืบทอดมันอธิบายว่า
การสืบทอดของสมาชิกเชื่อมโยงอย่างใกล้ชิดกับการเข้าถึงที่ประกาศไว้ หากสมาชิกระดับซุปเปอร์คลาสสามารถเข้าถึงได้โดยใช้ชื่อแบบง่ายในคลาสย่อย (โดยไม่ต้องใช้ไวยากรณ์เพิ่มเติมใด ๆ เช่น super) สมาชิกนั้นจะถูกพิจารณาว่าสืบทอด
นอกจากนี้ยังกล่าวถึงวิธีการคงที่ไม่ได้รับการสืบทอด แต่โค้ดด้านล่างนี้ใช้ได้อย่างสมบูรณ์แบบ:
class A
{
public static void display()
{
System.out.println("Inside static method of superclass");
}
}
class B extends A
{
public void show()
{
// This works - accessing display() by its simple name -
// meaning it is inherited according to the book.
display();
}
}
ฉันสามารถใช้display()
ในชั้นเรียนได้โดยตรงB
อย่างไร ยิ่งกว่านั้นB.display()
ยังใช้งานได้
คำอธิบายของหนังสือเล่มนี้ใช้กับวิธีการแบบอินสแตนซ์หรือไม่