Java单例模式(饿汉式)
Java中有很多设计模式,这些模式可以看作是一种套路,根据这套路来就可以解决类似对应的问题。
目前我们公认的有23种设计模式,今天聊聊Java单例模式(饿汉式)是怎么一回事。
上代码
//先创建一个类,女朋友类
class GirlFriend{//先私有化构造器,防止直接newprivate GirlFriend(){}//在类的内部直接new出一个对象,并且staticprivate static GirlFriend gf = new GirlFriend();//提供一个获取对象的方法public static GirlFriend getGirlFriend(){//把对象返回出去retrun gf;}
}
这样在调用时,只会产生一个女朋友对象
1、将构造器私有化,防止在外部直接new
2、在类的内部创建对象,并static,再提供一个公共方法,返回创建的静态对象
创建对象,为什么要用static修饰,因为静态方法只能访问静态成员,不能访问普通成员
static成员会在类加载的时候执行且只执行一次,
这样无论创建多少次,得到的都是同一个对象
为什么叫饿汉式
//先创建一个类,女朋友类
class GirlFriend{//有个私有属性,nameprivate static String name ="小红";//先私有化构造器,防止直接newprivate GirlFriend(){}//在类的内部直接new出一个对象,并且staticprivate static GirlFriend gf = new GirlFriend();//提供一个获取对象的方法public static GirlFriend getGirlFriend(){//把对象返回出去retrun gf;}
}
这里添加一个私有属性name,
如果我们通过类名直接调用这个name 属性,GirlFriend.name
那么根据类的加载机制,静态成员会先加载
所以gf对象也会先创建好。
比如有个媒婆给你介绍女朋友,你光知道了别人的名字,就已经想好了她是一个怎样的人,还没见过面,就已经在脑海中创建好了一个对象,这就称为饿汉式。
表示很着急,急着找对象
Java单例模式(饿汉式)相关推荐
- java 单例模式 ---饿汉式懒汉式
目录 单例设计模式 饿汉式 懒汉式 饿汉式vs懒汉式 结语 单例设计模式 所谓单例设计模式,就是采取一定的方法在整个软件系统中,对某个类只能存在一个对象实例 1.单例类只能有一个实例. 2.单例类必须 ...
- Java-Day12 面向对象的三大特征之封装、继承,单例模式(饿汉式、懒汉式)、方法重写 (覆盖)、注解 (annotation)、super关键字、对象的创建流程超详细
目录 1. 面向对象的三大特征之封装 1.1 封装的含义 1.2 封装的目的 1.3 封装的优点 1.4 封装的实现过程 1.5 拓展知识:JavaBean 2. 面向对象的三大特征之继承 2.1 继 ...
- Singleton模式(单例模式) 饿汉式和懒汉式
目的:整个应用中有且只有一个实例,所有指向该类型实例的引用都指向这个实例. 好比一个国家就只有一个皇帝(XXX),此时每个人叫的"皇帝"都是指叫的XXX本人; 常见单例模式类型: ...
- 单例模式——饿汉式和懒汉式
单例模式:一个类只允许存在唯一的对象,并提供它的访问方式 创建思路: 1.禁止在类的外部创建对象:私有化构造函数 2.在类的内部提供唯一的对象:静态成员变量 3.提供访问唯一对象的方法:静态成员函数 ...
- 单例模式饿汉式与懒汉式详解
单例模式饿汉式与懒汉式详解 步骤: 私有构造方法,使得在类的外部不能调用此方法,限制产生多个对象 类初始化时,区分饿汉式与懒汉式的区别 对外部提供调用方法,将创建的对象返回,只能通过类来调用 饿汉式: ...
- Java中单例模式—饿汉式和懒汉式
所谓单例模式就是为了确保类在内存中只有一个对象,之所以会出现单例模式是因为,单例模式在系统内存中只存在一个对象,可以节约资源 目录 一.饿汉式 二.懒汉式 一.饿汉式 该方式在开发中是经常用的,因为这 ...
- Java中单例模式----饿汉式(HungrySingLeton)和懒汉式(LazySingLeton)
一. 单例模式概述 单例模式(Singleton),也叫单子模式,是一种常用的设计模式.在应用这个模式时,单例对象的类必须保证只有一个实例存在.许多时候,整个系统只需要拥有一个的全局对象,这样有利于我 ...
- 【学习笔记】【C++整理A】【总】单例模式-饿汉式、懒汉式;
文章目录 一.语言分类: 三.基础A:- 函数重载.默认参数.extern "C".重复包含 1.函数重载 2.默认参数 3.extern "C" 4.防止重复 ...
- 单例模式饿汉式/懒汉式的区别
単例设计模式(Singleton Pattern): 所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法. 如果我们要 ...
- Java实现单例模式(懒汉式和饿汉式)
文章目录 前言 一.何谓单例模式? 二.如何控制某个类只有一个对象? 三.饿汉单例 四.懒汉单例 4.1 单线程下 4.2 多线程下(简单版) 4.3 多线程下(增强版) 总结 前言 博主个人社区:开 ...
最新文章
- LeetCode简单题之汇总区间
- Android关于绘图中Shader 的效果(中级)
- AttributeError:module tensorflow no attribute app解决办法
- getParentalNodePaths、osg::NodePathList、osg::NodePath详解
- ai模型_这就是AI的样子:用于回答问题的BiDAF模型
- Catalan卡塔兰数
- 几个想法,有兴趣的可以深入下去
- MySQL 管理猿利器: MySQL ODBC for iPhone!
- mysql 与c_mysql基础:mysql与C结合实例
- Docker 概述 与 CentOS 上安装、卸载、启动
- python 视频剪辑_视频剪辑什么鬼?Python 带你高效创作短视频
- 【零散知识】最大类间方差法(大津法,Otsu)
- gaster字体转换器_哥特字体在线生成,哥特字体在线生成器,哥特字体在线转换
- firefox 无法启动
- 服贸会在京举行|淘宝直播携手佳能佳直播联合发布《电商直播高画质开播指南》让品质直播触手可及...
- 项目管理师备考笔记:十大管理之范围管理
- Linux入门到精通
- 软件测试中UT,IT,ST,UAT
- 球的表面积(数论题)
- 白内障手术后诊断PHP,单眼PHPV+先天性白内障患儿, 3岁11个月手术,术后注意事项...