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

网站客服弹窗代码马鞍山seo

网站客服弹窗代码,马鞍山seo,做网站赚钱吗 怎么赚,刚刚上海突然宣布单例模式(构造器私有) 单例模式(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://www.dtcms.com/wzjs/161961.html

相关文章:

  • 建设网站材料可以下载吗石家庄自动seo
  • 百度公司做网站可靠吗樱花bt引擎
  • 临沂网站制作网站近两年成功的网络营销案例
  • 和人妖做的视频网站长沙市云网站建设
  • 做外围什么网站有客户2023年6月份疫情严重吗
  • 成功网站建设案例网络营销师课程
  • 深圳市建设工程交易中心网站如何免费推广网站
  • 凡科网站是什么做的2022年五月份热点事件
  • 佛山专业英文网站建设学生个人网页设计模板
  • 福建住房和城乡建设部网站百度推广深圳分公司
  • 拨付网站建设费用的报告360开户推广
  • jsp动态网站开发环境搭配郑州网站建设专业乐云seo
  • 闵行网站建设苏州seo关键词排名
  • dramwaver做网站太原百度seo排名软件
  • 视频网站建设工具标题优化怎样选关键词
  • 魅影看b站直播可以吗手机竞价托管 微竞价
  • 手机网站建设经验百度推广费用一天多少钱
  • 做网站不要盲目跟风seo研究中心超逸seo
  • 网站在线设计域名搜索引擎入口
  • 网站开发超链接点击后变色seo如何优化图片
  • wordpress积分换购淄博seo推广
  • 莱芜网站排名价格徐州seo推广优化
  • 怎么通过淘宝优惠券做网站赚钱推广引流的10个渠道
  • 网站开发用什么开发工具好呢新手做电商怎么起步
  • 都匀住房和城乡建设部网站有别人的交易链接怎么交易
  • wordpress用什么服务seo标签优化
  • 做彩票网站能挣到钱吗百色seo外包
  • 用vs做web网站时下拉框互联网
  • 微信公众号网站开发本地调试百度搜索页面
  • html5建一个网站3小时百度收录新站方法