如果static
成员没有继承,那么为什么我们可以使用子类引用来访问它。与给定示例中一样,我们不能通过使用A类引用来访问类A中的静态方法。
package me.addicted.to.java;
public class B extends A
{
public static void main(String[] args)
{
A.method();
B.method();
A a1 = new B();
B test = new B();
A arr[] = {a1,test};
for(int i = 0; i < 2; i ++){
arr[i].method();
}
}
}
class A
{
static int i = 10;
static void method(){
System.out.println("From Hello A");
}
}
Output :
From Hello A
From Hello A
From Hello A
From Hello A
答案 0 :(得分:1)
好吧,根据JLS的术语,static
成员 继承 - http://docs.oracle.com/javase/specs/jls/se8/html/jls-8.html#jls-8.4.8
有一个例外 - 接口中的静态方法不会被继承。