首页 新闻 会员 周边 捐助

static成员是不能被其所在class创建的实例访问???

0
悬赏园豆:10 [已解决问题] 解决于 2017-03-21 11:48

作为一个Java的渣渣。最近在看static关键字的详解,看到网上的一篇文章中写道:static成员是不能被其所在class创建的实例访问。

    就感觉怪怪的,感觉应该是可以访问的。然后自己写了一个例子测试了一下。

    代码如下:

 

[java] view plain copy
  1. public class StaticTest {  
  2.     public static void main(String[] args)  
  3.     {  
  4.         A mm = new A();  
  5.         System.out.println("A.a = "+ A.a);  
  6.         System.out.println("mm.a = "+ mm.a);  
  7.         A.add(100);  
  8.         mm.add(24);  
  9.     }  
  10. }  
  11. class A{  
  12.     protected static int a = 5;  
  13.     private static int b;  
  14.     public static void add(int c)  
  15.     {  
  16.         b = c;  
  17.         System.out.println("b=="+b);  
  18.     }  
  19. }  

 

    输出结果:

 

[java] view plain copy
  1. A.a = 5  
  2. mm.a = 5  
  3. b==100  
  4. b==24  

 

    表示很不能理解,但是网上也确实说是不能被访问的,请问怎么理解这句话呢!!!请大神解答。。。

坐在家里晒太阳的主页 坐在家里晒太阳 | 初学一级 | 园豆:117
提问于:2017-03-21 11:33
< >
分享
最佳答案
0

没有这个语法.你看的那个网站是假网站

收获园豆:10
吴瑞祥 | 高人七级 |园豆:29449 | 2017-03-21 11:38

...那按您的意思来说,static成员是可以被其所在的类的实例对象所访问的是吗,我也觉得可以啊,我都整懵了!!!可是网上有这个说法的贴太多了,,,我不知道该信哪个了。

坐在家里晒太阳 | 园豆:117 (初学一级) | 2017-03-21 11:41

@坐在家里晒太阳: 说明他们都是复制的.

从来没听说静态成员还有这种限制.

在实例对象中使用静态成员的场景太多了.

吴瑞祥 | 园豆:29449 (高人七级) | 2017-03-21 11:45

@吴瑞祥: 多谢了!!!,看来以后还得自己多实践为准,,,网上的也不一定正确。。。

坐在家里晒太阳 | 园豆:117 (初学一级) | 2017-03-21 11:47

@坐在家里晒太阳: 语法这种东西.十分建议你买本教科书.就是大学里的教材的那种.

看完就不会有这些问题了.语法不扎实其他的都是扯淡.

吴瑞祥 | 园豆:29449 (高人七级) | 2017-03-21 11:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册