黑马程序员技术交流社区

标题: 关于静态,可以相互讨论 [打印本页]

作者: 人心如水    时间: 2014-6-21 18:38
标题: 关于静态,可以相互讨论
问两个静态方面的问题:
              1,我们知道如果方法里面没有对象特有数据就加静态,静态方法只能调用静态成员,他们都在类创建时就创建了,那么静态成员还有其他的作用吗?除了被静态和非静态方法调用之外的作用。
              2,非静态内部类里面不能有静态的成员,我自己的理解是:静态的方法必须被类调用,非静态里面的静态方法没有存在的意义,静态的成员变量可以被非静态的方法调用为什么没有存在的意义?只能final?
作者: 姿_`态    时间: 2014-6-21 19:24
1.静态的可以直接被类名调用。当在单例模式,或者其他不能创建对象的时候,是用类名调用是很重要的。
2.非静态内部类为什么不可以定义静态,因为静态是随着类的加载而加载的,所以是先有了非静态内部类的内部成员,后有了非静态,这样说有意义?类都还没有,就有了成员,说不通,所以非静态内部类为什么不可以定义静态,
还有就是,为什么静态的成员变量可以被非静态的方法调用为什么没有存在的意义?只能final? 之所以定义为静态成员变量,是因为它们是共享数据,我们去改变他是没有意义的,如果用fianl 修饰,就避免了被修改,更加安全。
作者: 人心如水    时间: 2014-6-21 19:34
姿_`态 发表于 2014-6-21 19:24
1.静态的可以直接被类名调用。当在单例模式,或者其他不能创建对象的时候,是用类名调用是很重要的。
2.非 ...

谢了。。。。
作者: 姿_`态    时间: 2014-6-21 19:35
人心如水 发表于 2014-6-21 19:34
谢了。。。。

不客气,共同学习,嘿嘿
作者: 雾里看花。    时间: 2014-6-21 20:51
学习了 谢  谢  




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2