AlphaGo_1 2016-07-02 02:47 采纳率: 100%
浏览 2482
已采纳

设计模式中的单例中的成员为什么不都用static呢?

除了一个stadic成员变量和一个static的get方法,所有成员方法成员变量为什么不都为static。

  • 写回答

5条回答

  • Seachal 2016-07-02 02:57
    关注

    static 确保只在类加载的时候才初始化一次。
    单例模式是运行的当前虚拟机中有且只有一个需要的对象,不存在重复(通过private构造方法控制不让外界访问)。
    static 是给类静态成员变量使用的,属于类的属性,一般是一些常量之类的东西,从加载上来说对于类和对象之间,在类加载到内存时候静态成员变量就存在了,而对象还不存在。
    另外 静态方法只能调用静态方法和静态变量这个你也应该知道,如果全部搞成静态方法那么意味着其他成员变量都要是静态的,很不方便。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料