当前位置: 首页 > wzjs >正文

网站开发后端书籍免费h5响应式网站搭建

网站开发后端书籍,免费h5响应式网站搭建,怎么做二手房网站,重庆网站推广产品单例模式(构造器私有) 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一,有以下特点: 单例类只能有一个实例。 单例类必须自己创建自己的唯一实例。 单例类必须给所有其他对象提供这一实例。 反射可以破坏单例模式…
单例模式(构造器私有)

单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一,有以下特点:

  • 单例类只能有一个实例。

  • 单例类必须自己创建自己的唯一实例。

  • 单例类必须给所有其他对象提供这一实例。

反射可以破坏单例模式!!!

饿汉式

这种方式比较常用,但容易产生垃圾对象 优点:没有加锁,执行效率会提高。 缺点:类加载时就初始化,浪费内存。

 
package com.lyc.single;//饿汉式单例public class Hungry {//可能会浪费空间private byte[] bytes1= new byte[1024*1024];private byte[] bytes2= new byte[1024*1024];private byte[] bytes3= new byte[1024*1024];private byte[] bytes4= new byte[1024*1024];private Hungry(){​}private static final Hungry instance = new Hungry();//创建对象public static Hungry getInstance(){return instance;}}
 ​
懒汉式

DCL懒汉式:在懒汉式基础上加入双重检验锁,保证线程安全和性能。

 
package com.lyc.single;//懒汉式单例模式public class LazyMan {private LazyMan(){​}private volatile static LazyMan lazyMan;public LazyMan getInstance(){//双重检测锁模式的懒汉式单例,简称:DCL懒汉式if (lazyMan==null){synchronized (LazyMan.class){if (lazyMan==null){lazyMan=new LazyMan();//不是一个原子性操作//1.分配内存给这个对象//2.执行构造方法,初始化对象//3.将这个对象指向这个空间//可能会发生指令重排,导致对象还没初始化完成,就返回了//如果有两个线程在创建对象,可能会造成对象还没初始化完成,就返回了//如果在创建对象时,多个线程同时判断到lazyMan==null,就会创建多个对象//解决方法://1.使用synchronized关键字//2.使用volatile关键字}}}return lazyMan;}//单线程下是安全的//多线程下是不安全的,需要在加锁。}​

静态内部类

 package com.lyc.single;//静态内部类实现public class Holder {private Holder(){​}public static Holder getInstance(){return  InnerClass.holder;}public static class InnerClass{private static final Holder holder = new Holder();}}
 

单例不安全,因为有反射

枚举

 package com.lyc.single;​import java.lang.reflect.Method;​//enum是什么,枚举本身也是一个Class类public enum EnumSingle {INSTANCE;​public EnumSingle getInstance() {return INSTANCE;}}​package com.lyc.single;​import java.lang.reflect.Constructor;import java.lang.reflect.Method;​public class SingleTest {public static void main(String[] args) throws Exception{EnumSingle instance = EnumSingle.INSTANCE;Constructor<EnumSingle> declaredConstructor = EnumSingle.class.getDeclaredConstructor(String.class, int.class);declaredConstructor.setAccessible(true);EnumSingle instance1 = declaredConstructor.newInstance();System.out.println(instance.hashCode());System.out.println(instance1.hashCode());}}
 ​

文章转载自:

http://8zSQ3vCe.gyxwh.cn
http://N4uFMilB.gyxwh.cn
http://Om72UfiB.gyxwh.cn
http://v5QKvl2Z.gyxwh.cn
http://lnJB5fOs.gyxwh.cn
http://Olwsfirn.gyxwh.cn
http://MiZJhr6P.gyxwh.cn
http://B7rqsILD.gyxwh.cn
http://9Z8vKFvg.gyxwh.cn
http://aADR4D2D.gyxwh.cn
http://FECLuVc5.gyxwh.cn
http://eQ71GKy6.gyxwh.cn
http://Ic0qm0RF.gyxwh.cn
http://D6gIkhb5.gyxwh.cn
http://E3CoYmnn.gyxwh.cn
http://8Qu6N8hl.gyxwh.cn
http://GppInRtb.gyxwh.cn
http://Mx1q3GNF.gyxwh.cn
http://sa1ZZuMq.gyxwh.cn
http://EQUZkc9A.gyxwh.cn
http://clAxnbub.gyxwh.cn
http://EHY4wB7Q.gyxwh.cn
http://Ea2Nyj3n.gyxwh.cn
http://SOIf1UZa.gyxwh.cn
http://H2gCBCue.gyxwh.cn
http://UZht2hZt.gyxwh.cn
http://ZPSa2ehP.gyxwh.cn
http://vUbEWtrj.gyxwh.cn
http://kvd8PiKz.gyxwh.cn
http://OeT2pGPq.gyxwh.cn
http://www.dtcms.com/wzjs/681969.html

相关文章:

  • 网站建设比较好的多少钱wordpress appcan
  • 有没有做维修的网站wordpress自动分享插件下载地址
  • 外贸业务员做网站手机链接ppt在哪个网站做
  • 在哪可以建一个网站有那种做订单的网站吗
  • 蚂蜂窝网站源码上海排名十大装潢公司
  • 科技公司 网站设计经典案例网页数据可视化设计案例
  • 网站开发实施计划与安排做网站都有备案吗
  • 保定市建设局安监网站淘宝客怎么做网站管理
  • 上海浦东网站建设中山网站建设文化服务
  • 中国建设银行网上银行官方网站海阳网站建设
  • 大连城市建设集团网站工作室 网站经营性备案
  • 网站开发中所需要的绘图工具南京触屏网站开发
  • dell公司网站建设的特点网络平台建设管理制度
  • 分类信息网站如何建设网络推广话术开场白
  • 域名网站这么做为女人网上量体做衣网站
  • 优秀企业网站建设价格wordpress文章批量替换
  • 求网站建设详细过程计划网站搭建
  • 贵阳网站建设方案报价html网站首页设计
  • 如何自己创建购物网站网站后台功能
  • 网站后台登录系统是怎么做的盗版小说网站建设
  • 非常好的网站建设公司网推app有哪些
  • 常州市经开区建设局网站长沙寸金网络营销网址
  • 网站定制网页设计wordpress多个内容模块
  • 编程网站项目做哪个比较好厦门app网站设计
  • 2018春节放假安排 网站建设网站排名优化快速
  • 不要验证码的广告网站《梦幻西游》官网
  • 电子商务网站总体框架设计2018网站建设合同范本
  • 百度公司做网站优化多少钱成都全程网络营销策划机构
  • 广州专业网站建设公司爱美刻在线制作网站
  • 英文网站建设运营连云港seo