剑指offer笔记--2基础知识--单例模式
程序员文章站
2022-03-14 21:17:58
...
这里使用java进行最优的直接写法,其实关于单例模式最基本的就是懒汉式和饿汉式,其中饿汉式是一种最简单但是比较占内存的一种方式。懒汉式是一种需要多重考虑多线程的一种方式。但是java最大的特点是可以使用静态内部类的方式获取单例,借助两方面的优势。
package cn.riversky.create.singleton;
/**
* 单例模式最优方法之一
* 1构造函数私有化
* 2静态私有内部类(具有静态单例的实例)
* 3单例对象的公共方法
* @author riversky E-mail:aaa@qq.com
* @version 创建时间 : 2018/3/11.
*/
public class Person {
private String name;
private String sex;
private static class PersonHolder{
private final static Person instance=new Person("习大大","男");
}
public static Person getInstance(){
return PersonHolder.instance;
}
private Person(String name, String sex) {
this.name = name;
this.sex = sex;
}
private Person() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
测试
package cn.riversky.create.singleton;
/**
* @author riversky E-mail:aaa@qq.com
* @version 创建时间 : 2018/3/11.
*/
public class Client {
public static void main(String[] args) {
System.out.println(Person.getInstance());
System.out.println(Person.getInstance());
System.out.println(Person.getInstance());
}
}
上一篇: 二叉树基础:先序、中序、后序递归及非递归实现与层次遍历
下一篇: 京东暖心广告上线,守护平凡生活