日期:2014-05-20  浏览次数:20586 次

为什么类名可以直接访问类的属性和方法?
别回答的太肤浅、

------解决方案--------------------
除非这个“属性”或者方法是静态的,否则是无法访问的。

如果“属性”是静态的话,不应该称为属性,而应该称为静态变量。
------解决方案--------------------
如果回答:Java语言规范规定如此。你满意么?

类的静态属性和方法,跟普通的成员属性和方法,其最终的区别就在于前者是伴随着类定义的装载就完成初始化并提供直接访问了。


或者反过来问:如果连用类名都无法访问类的静态属性和方法,那还能有什么招数去访问呢?


------解决方案--------------------
只有类中的静态方法和类变量才可以被访问,因为静态的方法或者变量不依赖类变量的存在而存在,这就是为什么程序入口是 public static void main()
------解决方案--------------------

呵呵!这么说吗?类名就是你的名字,属性和方法就比如:是你的胳膊和腿,你当然可以访问你的胳膊和腿了,

除非你的胳膊和腿是别人,就算是别人,别人授权了,你也一样可以访问。如你老婆的腿和胳膊她授权了你就可以

访问对不对。如果你不授权给你,你访问,你想想你去访问了一个没同意你访问的东西!会不会犯法啊,呵呵!