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

jsp动态网站开发项目教程/扫图片识别图片原图

jsp动态网站开发项目教程,扫图片识别图片原图,如何做影视网站的标题,在线制作logo模板目录 面试题目💬: 编写结果🧾: 1.饿汉式: 方法一:直接实例化饿汉式 方法二:枚举式 方法三:静态代码块饿汉式 2.懒汉式: 方法一:线程不安全 方法二&am…

目录

面试题目💬:

编写结果🧾:

1.饿汉式:

方法一:直接实例化饿汉式

方法二:枚举式

 方法三:静态代码块饿汉式

2.懒汉式:

方法一:线程不安全

方法二: 线程安全

 方法三:静态内部类形式

题目解析✏️:

1.什么是Singleton?

要点:

2.几种常见形式:

饿汉式:

懒汉式:


面试题目💬:

编写一个Singleton示例!


编写结果🧾:

1.饿汉式:

方法一:直接实例化饿汉式

/*** 饿汉式:*  直接创建实例对象,不管你是否需要这个对象都会进行创建!* * 1.构造器私有化* 2.自行创建,并且用静态变量保存* 3.向外提供这个实例* 4.通过final关键字,强调这是一个单例*/public class Singleton {//TODO: 使用静态代码块保存变量private static final Singleton INSTANCE = new Singleton();//TODO: 私有化构造方法private Singleton(){}//TODO: 向外提供这个实例public static Singleton getInstance(){return INSTANCE;}
}

方法二:枚举式

/*** 枚举类型:表示该类型的对象是有限的几个* * 我们可以限定为1个,即为单例*/public enum Singleton {INSTANCE
}

 方法三:静态代码块饿汉式

/*** 静态代码块:**  随机类的加载,执行静态代码块中的代码,完成初始化的操作!*  一般用于初始化实例化时,需要对实例属性进行赋值*/public class Singleton {private static final Singleton INSTANCE;//静态代码块,在类加载时便会执行其中代码,完成初始化操作static {INSTANCE = new Singleton();}private Singleton(){}public static Singleton getInstance(){return INSTANCE;}
}

2.懒汉式:

方法一:线程不安全

/*** 懒汉式:*  延迟创建这个实例对象** 1.构造器私有化* 2.自行创建,并且用静态变量保存* 3.向外提供这个实例*/public class Singleton {private static Singleton INSTANCE;private Singleton(){}//通过调用静态方法来实例化,但是线程不安全!!!public static Singleton getInstance(){if (INSTANCE == null){INSTANCE = new Singleton();}return INSTANCE;}
}

这里有一个线程安全问题: 

        当存在多个线程去调用getInstance方法时,如果第一个线程在执行完判断后为空进入创建实例,此时,线程被阻塞。还没有对INSTANCE实例进行赋值操作。第二个线程再对getInstance方法进行调用,这时可能会导致创建两个不同的实例对象,即线程不安全,不满足单例要求!

方法二: 线程安全

/*** 懒汉式:*  延迟创建这个实例对象** 1.构造器私有化* 2.自行创建,并且用静态变量保存* 3.向外提供这个实例*/public class Singleton {private static Singleton INSTANCE;private Singleton(){}//通过调用静态方法来实例化,但是线程不安全!!!public static Singleton getInstance(){if (INSTANCE == null){//使用synchronized关键字来保证代码块同步,避免线程不安全synchronized (Singleton.class){if (INSTANCE == null){INSTANCE = new Singleton();}}}return INSTANCE;}
}

 方法三:静态内部类形式

/*** 懒汉式:*  延迟创建这个实例对象** 在内部类被加载和初始化时,才创建INSTANCE实例对象* 静态内部类不会自动随着外部类的加载和初始化而初始化,它是要单独去加载和初始化的* * 因为是在内部类初始化时,创建单例,所以是延迟加载*/public class Singleton {private Singleton() {}//内部类private static class Inner{private static final Singleton INSTANCE = new Singleton();}public static Singleton getInstance(){return Inner.INSTANCE;}
}

题目解析✏️:

1.什么是Singleton?

        Singleton:在Java中即指单例设计模式。单例设计模式,即某个类在整个系统中只能有一个实例对象可被获取和使用的代码模式。如代表JVM运行环境的Runtime类。

要点:

  • 某个类只能有一个实例:构造器私有化
  • 必须自行创建这个实例:含有一个该类的静态变量来保存这个唯一实例
  • 必须自行向整个系统提供这个实例:对外提供获取该实例对象的方式
    • 直接暴露
    • 用静态代码块的get方法获取

2.几种常见形式:

饿汉式:

直接创建对象,不存在线程安全问题:

  • 直接实例化饿汉式(简介直观)
  • 枚举式(最简洁)
  • 静态代码块饿汉式(适合复杂实例化)

懒汉式:

延迟创建对象:

  • 线程不安全(适用于单线程)
  • 线程安全(适用于多线程)
  • 静态内部类形式(适用于多线程)

        成功复习了一手单例模式😁,有没有收获满满,哈哈哈!加油,不管生活多么艰难,每天进步一点点,总有一天一切都会好起来的🌈!!!


 

http://www.jmfq.cn/news/4786615.html

相关文章:

  • 哪个网站做设计可以挣钱/百度电话销售
  • 做视频网站有什么/360优化大师官方官网
  • 做婚纱摄影网站/哪里有培训班
  • 如何让wordpress主页不显示文章/seo优化的技巧
  • 什么是权重高的网站/要怎么网络做推广
  • wordpress 有的https/昆明百度推广优化
  • 商丘网站制作/建站优化
  • 白云区网站建设/企拓客app骗局
  • 中国最好的网站建设/苏州网站建设优化
  • 排名好的徐州网站建设/网站设计需要什么
  • 网站备案是备案域名还是空间/seo产品是什么意思
  • vi设计要素/厦门seo优化
  • 做美妆批发的网站有哪些/怎么自己制作网站
  • 医院诊所响应式网站模板/山西seo优化公司
  • 南昌市有帮做网站的吗/友情链接交换网站
  • 做网站用什么/万网域名购买
  • 业网站制作/手机优化大师
  • 加强网站基础建设/百度网址是什么
  • 网站建设演示ppt模板/上海关键词优化报价
  • wordpress迁移后媒体库丢失/上海关键词排名优化怎样
  • 冀州网站制作/seo网络搜索引擎优化
  • 私人找人做网站/互联网推广怎么找渠道
  • python 视频播放网站开发/昆明seo网站建设
  • 个人网站 费用/济南网络seo公司
  • 如何建购物网站/医院网站建设方案
  • 做网站还是移动开发/深圳seo优化公司排名
  • html怎么生成链接给别人/关键词优化包含
  • 北京做网站供应商/杭州谷歌推广
  • wordpress id乱码/杭州seo软件
  • 如何做地方网站推广/成都seo达人