反射与单例设计模式|学习笔记

简介: 快速学习反射与单例设计模式

开发者学堂课程【Java 高级编程反射与单例设计模式】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/20/detail/379


反射与单例设计模式


内容简介:

1、范例:观察懒汉式单例设计模武的问题.

2、修改 getInstance() 方法进行同步处理

3、在 Java 中使用到单例设计模式


1.观察懒汉式单例设计模武的问题.

单例设计模式的核心本质在于:

类内部的构造方法私有化,在类的外部产生类产生实例化对象之后通过 static 方法获取实例化对性行类中的结构调用,单例设计模式一共有两类:懒汉式、饿汉式。

范例:图片13.png


2.修改 getInstance() 方法进行同步处理

单例设计模式的最大特点是在整体的运行过程之中只允许产生一个实例化对象,当有了若干线程之后当前的程序就可以产生多个实例化对象,、此时就不是单例设计模式。

问题造成的关键在于代码本身出现了不同步的情况,而要想解决的关键核心在于需要进行同步处理,使用 synchronized 类

范例:图片14.png

此时同步效率低,因为整体代码里实际只有一部分进行同步处理, instance 对象的实例化处理部分

范例:更合理的同步处理

图片15.png


3.在 Java 中使用到单例设计模式

 Runtime 类 Class 类、Pattern 类、Spring 框架

相关文章
|
1月前
|
设计模式 安全 测试技术
【C/C++ 设计模式 单例】单例模式的选择策略:何时使用,何时避免
【C/C++ 设计模式 单例】单例模式的选择策略:何时使用,何时避免
61 0
|
1月前
|
设计模式 缓存 安全
单例设计模式的优缺点
单例设计模式的优缺点
31 0
|
1月前
|
设计模式 XML 存储
关于 ABAP 单例设计模式的一个冷门知识点
关于 ABAP 单例设计模式的一个冷门知识点
22 0
|
1月前
|
设计模式 安全 Java
【设计模式】2、设计模式分类和单例设计模式
【设计模式】2、设计模式分类和单例设计模式
25 0
|
1月前
|
设计模式 Java
26、Java 简单实现单例设计模式(饿汉式和懒汉式)
26、Java 简单实现单例设计模式(饿汉式和懒汉式)
28 2
|
3月前
|
设计模式 消息中间件 安全
多线程编程设计模式(单例,阻塞队列,定时器,线程池)(二)
多线程编程设计模式(单例,阻塞队列,定时器,线程池)(二)
34 1
|
26天前
|
设计模式 安全 Java
在Java中即指单例设计模式
在Java中即指单例设计模式
18 0
|
3月前
|
设计模式 缓存 安全
Go语言必学的单例设计模式
Go语言必学的单例设计模式
34 0
|
3月前
|
设计模式 存储 Java
多线程编程设计模式(单例,阻塞队列,定时器,线程池)(四)
多线程编程设计模式(单例,阻塞队列,定时器,线程池)(四)
93 1
|
3月前
|
设计模式 存储 安全
多线程编程设计模式(单例,阻塞队列,定时器,线程池)(三)
多线程编程设计模式(单例,阻塞队列,定时器,线程池)(三)
38 2