|面试官喜欢问的 设计模式之单例模式,java常见排序算法面试题
如果一个类从始至终只能创建一个实例 , 把这个类就称为单例类 。
1. 什么是单例设计模式
单例设计模式就是采取一定的方法保证在整个的软件系统中 , 对于某个类只能存在一个对象实例, 并且该类只提供一个得到其对象实例的方法 。
如果要求类在一个虚拟机中只能产生一个对象 , 不能自由创建该类的对象 。 避免其他类创建该类的实例 , 我们首先必须将类的构造器的访问权限设置为 private, 把该类的构造器隐藏起来了 。 这样就不能用 new 操作符在类的外部产生类的对象了 , 但在类内部仍可以产生该类的对象 。 因为在类的外部开始还无法得到类的对象 , 只能调用该类的某个静态方法以返回类内部创建的对象 , 静态方法只能访问类中的静态成员变量 , 所以 , 指向类内部产生的该类对象的变量 , 也必须用static修饰? 。
2. 单例模式的两种形式
2.1 懒汉式示例代码:
public class Singleton1 {
// 提供当前类型的静态变量
private static Singleton1 s;
// 构造方法私有化 , 这样类就不会被实例化
private Singleton1() {
// 对外提供一个公开的、静态的方法 , 获取Singleton1对象
public static Singleton1 getInstance() {
// 如果s为null表明还没有创建Singleton1对象
// 否则 , 表明已经创建了对象
if (s == null) {
// 创建Singleton1对象
s = new Singleton1();
return s;
public static void main(String[
args) {
// 创建Singleton1对象不能使用构造器 , 只能通过getInstance()方法获取实例
Singleton1 s1 = Singleton1.getInstance();
Singleton1 s2 = Singleton1.getInstance();
System.out.println(s1 == s2);
代码执行结果:
true
? ? ? ?通过 getInstance() 方法 , 保证 Singleton1 类只能产生一个对象 。 因此 , 代码最后的执行结果是 true , 说明 Singleton1 对象实际上是同一个对象 。
懒汉式存在线程安全的问题 , 在下面将会解决线程安全问题 。
2.2. 饿汉式示例代码:
public class Singleton2 {
// 提供当前类型的静态变量
// 类加载的时候只执行一次
private static Singleton2 s = new Singleton2();
// 构造方法私有化
private Singleton2() {
// 提供公共的静态的方法 , 返回当前类的对象
public static Singleton2 getInstance() {
return s;
public static void main(String[
args) {
// 创建Singleton2对象不能使用构造器 , 只能通过getInstance()方法获取实例
Singleton2 s1 = Singleton2.getInstance();
Singleton2 s2 = Singleton2.getInstance();
面试资料整理汇总
这些面试题是我朋友进阿里前狂刷七遍以上的面试资料 , 由于面试文档很多 , 内容更多 , 没有办法一一为大家展示出来 , 所以只好为大家节选出来了一部分供大家参考 。 需要这些资料的小伙伴后台私信【面试】即可领取哦
面试的本质不是考试 , 而是告诉面试官你会做什么 , 所以 , 这些面试资料中提到的技术也是要学会的 , 不然稍微改动一下你就凉凉了
【|面试官喜欢问的 设计模式之单例模式,java常见排序算法面试题】在这里祝大家能够拿到心仪的offer!
- 谷爱凌|传统有线耳机如何选,500以内发烧友喜欢的有线耳机
- 微信使用不当会被封号?微信官方再出新规,其中包括“好友过量”
- 小米科技|年轻人的第一部\奔驰\?小米新机官宣联动奔驰:三千块就能拿下!
- 任天堂官宣:Wii U和3DS明年3月停止eShop游戏销售
- 骁龙8Gen1|又一款骁龙8 Gen1旗舰官宣:25日发布 定制35mm大师镜头
- 显示器|三星手机将不再免费提供屏幕保护膜?官方回应了
- Python|谁会花两千多买苹果五年前的官翻手机?
- 本文转自:爱吉安主流媒体 权威发布吉安广播电视台官方微信号|编 辑:紫彧|责 编:刘浩|...|市民注意!这路公交部分班次将于2月16日起进行绕行调整
- 京东|响应慢不代表卡!苹果老机型状态很好,但官方态度却一言难尽
- 尼康|是在暗示魅族19系列要来了吗?官宣海报透露元宵节有大动作