为什么选D求详解

关于以下程序代码的说明正确的是( ):  
1.class HasStatic{  
2. private static int x=100;  
3. public static void main(String args[ ]){  
4. HasStatic hs1=new HasStatic( );  
5. hs1.x++;  
6. HasStatic hs2=new HasStatic( );  
7. hs2.x++;  
8. hs1=new HasStatic( );  
9. hs1.x++;  
10. HasStatic.x--;  
11. System.out.println(“x=”+x);  
12. }  
13.}  
 A.  
  5行不能通过编译,因为引用了私有静态变量  
  B.  
  10行不能通过编译,因为x是私有静态变量  
  C.  
  程序通过编译,输出结果为:x=103  
  D.  
  程序通过编译,输出结果为:x=102

作者: wan_dou_   发布时间: 2011-06-12

x在内在中只有一份,不管是hs1.x、hs2.x还是HasStatic.x,x都是同一个

作者: zhangao0086   发布时间: 2011-06-12