 仙女级别的程序媛haha
      仙女级别的程序媛haha
    
    五笔啊
 cc___
      cc___
    
    有个方法是setAccessbile(true)可以反射到私有构造器吧.
 HappySimon
      HappySimon
    
    已解决,手误
 小浣熊爱高高
      小浣熊爱高高
    
    一般还是推荐使用DCL或者静态内部类单例模式
 丰裕
      丰裕
    
    static静态变量是可以被修改的,所有只提供getInstance()方法供外界获取对象,保证变量不会被修改
 六圣剑影魔
      六圣剑影魔
    
    新学的就去学基础吧,这个等你有基础再来。
 慕粉3958060
      慕粉3958060
    
    手写呗
 Coder编程
      Coder编程
    
    因为这个类在加载的时候就实例化了,就算thread1和thread2同时获取它,取到的是类加载时实例化的那个变量的值,所以说是线程安全的;而懒汉式线程不安全,因为有可能thread1在if(instance==null)判断为真时进入了if体里但又没开始实例化,而这时thread2也进来了,最终就会有2个实例了。
 qq_竹呓_0
      qq_竹呓_0
    
     翘俏丫头女裤
      翘俏丫头女裤
    
    单线程的时候使用懒汉式,能节省一点点的内存空间,多线程的时候使用饿汉式,能防止多线程导致的错误。
 qq_一米阳光_102
      qq_一米阳光_102
    
    老师只在类里面创建了一个实例,
我只给第一个(饿汉模式)说明一下:
1.老师先在第一步中创建一个实例:instance 要说明的是instance相当于一个人的姓名,就像刚出生的孩子我们会给他取一个称呼叫‘张三’,new的一个实例(对象)我们也要给他取一个名字叫‘instance’.那么我们就可以用instance来确定,它就是那个新建的实例。
2.然后老师在第三步给出了一个方法(这是一个静态的开放权限的方法,可以通过类名直接调用):
这个方法反回了instance(相当于人的名字,而不是那个具体的人),然后调用这个方法时,只是相当于给这个起了一个其他的代表这个人的称呼,比如相当于他的学号,但这个人还是张三。和这个道理是一样的。
java是一种面向对象的语言,基本上都按照生活中的思维方式设计的,联系生活实际就可以很轻松的入门的。
如果你懂c中的指针的话,就简单了:instance就相当于是指向新实例化对象的内存首地址,而定义的方法只是将指针传出去,而new的对象的信息还在那片内存,所以不管你在外面调用了多少次那个方法,都只是同一个实例(对象)罢了
 Leo_Li
      Leo_Li
    
    
   ___码农
      ___码农
    
    
   虚空的翅膀
      虚空的翅膀
    
    
   一蓑烟雨11
      一蓑烟雨11
    
    
   否则悲伤从何而来
      否则悲伤从何而来
    
    
   HelloFire
      HelloFire
    
    
   RainbowPeter
      RainbowPeter
    
    
   Clark_0001
      Clark_0001
    
    
   Whisperd
      Whisperd
    
    
   襡箛⊙遠飛
      襡箛⊙遠飛
    
    
   suegeeker
      suegeeker
    
    
   lvduany
      lvduany
    
    
   Tad2021
      Tad2021