【发布时间】:2012-05-04 17:42:28
【问题描述】:
我正在阅读程序员指南 由 Khalid Mughal 颁发的 Java™ SCJP 认证。
在继承一章中,它解释了
成员的继承与他们声明的内容密切相关 可访问性。如果超类成员可以通过其简单名称访问 在子类中(不使用任何额外的语法,如 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();
}
}
我怎样才能在课堂B 中直接使用display()?更重要的是,B.display() 也可以。
书上的解释是否只适用于实例方法?
【问题讨论】:
-
这不是我的副本中所说的,第一版。请提供实际报价。
标签: java inheritance static