参见英文答案 >
Are static members of a generic class different for different types in Java?2个
我想问一下泛型类.当我从泛型类创建两个对象实例时会发生什么.他们是否共享每个静态成员,或者两者都拥有自己的静态成员?
我想问一下泛型类.当我从泛型类创建两个对象实例时会发生什么.他们是否共享每个静态成员,或者两者都拥有自己的静态成员?
例如:
public A<?>(){
public static Integer member = 0;
}
A<Integer> integer = new A<Integer>();
A<String> string = new A<String>();
Integer和String在成员后面都有相同的引用吗?
解决方法
public class A<T>{
public static Integer member = 0;
public static void main(String[] args)
{
A<Integer> integer = new A<Integer>();
A<String> string = new A<String>();
integer.member++;
System.out.println(string.member);
}
}
产量
1
所以,是的,这两个实例共享相同的成员变量.