概述
单例模式
单个实例,一个程序中,该类的对象只允许产生一个。
- 外界不能随便new(构造方法私有化)
- 提供公共的获取对象方式 静态的
- new 的动作 只能一次!!!静态变量随着类的加载 初始化,初始化一次
饿汉式
只要类加载,对象就产生,无论是否使用
多线程使用没有问题
package com.it.single;
/*
如何完成单例
1:私有构造方法
2:定义静态变量 完成初始化
3:提供公共的静态的获取方法
饿汉式:
只要类加载了,这个对象就产生了。
不管别人用不用。
多线程使用没有问题。
*/
public class Single {
//定义静态变量
private static Single single= new Single();
// 私有了构造
private Single(){}
//提供公共的访问方式 静态的
public static Single newInstance(){
return single;
}
}
懒汉式
package com.it.single2;
/*
饿汉式
类一加载就创建了对象。
浪费内存。
延迟加载。用的时候再创建。
懒汉式
延迟对象的产生
*/
public class Single {
//定义静态变量
private static Single single = null;
// 私有了构造
private Single(){}
//提供公共的访问方式 静态的
public static Single newInstance(){
// 判断该对象是否已经创建了
if(single==null){
single = new Single();
}
return single;
}
}
线程安全的懒汉式
package com.it.single3;
public class Single {
//定义静态变量
private static Single single ;
// 私有了构造
private Single(){}
//提供公共的访问方式 静态的
public static Single newInstance(){
if(single==null){
final Single s = new Single();
}
//为了提高效率加一个 非空判断
if(single==null){
synchronized (Single.class){
// 判断该对象是否已经创建了
if(single==null){
single = new Single();
}
}
}
return single;
}
}
什么是工厂模式
工厂模式
什么是工厂模式
1.工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。
2.在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,是通过使用一个共同的接口来指向新创建的对象。
栗子
您需要一辆汽车,可以直接从工厂里面提货,而不用去管这辆汽车是怎么做出来的,以及这个汽车里面的具体实现。
优缺点
优点: 1、一个调用者想创建一个对象,只要知道其名称就可以了。 2、扩展性高,如果想增加一个产品,只要扩展一个工厂类就可以。 3、屏蔽产品的具体实现,调用者只关心产品的接口。
缺点:每次增加一个产品时,都需要增加一个具体类和对象实现工厂,使得系统中类的个数成倍增加,在一定程度上增加了系统的复杂度,同时也增加了系统具体类的依赖。这并不是什么好事。
工厂模式一般都是创建一个产品,注重的是把这个产品创建出来就行,只要创建出来,不关心这个产品的组成部分。从 代码上看,工厂模式就是一个方法,用这个方法就能生产出产品。
在这之后过了大约30万年,物质和能量开始形成复杂的结构,称为原子,再进一步构成分子。至于这些原子和分子的故事以及它们如何互动,就成了化学。
人类简史
最后
以上就是强健白开水为你收集整理的java23种设计模式(暂时只有简单的几种)单例模式什么是工厂模式的全部内容,希望文章能够帮你解决java23种设计模式(暂时只有简单的几种)单例模式什么是工厂模式所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复