单例设计模式 泛型
目的
保证一个类在使用过程中只有一个实例。就是他的作用,这个类永远只有一个实例。
技术
- 单例设计模式
1.不允许用户创建这个类的一个对象
将类的构造方法私有化
2.在自己的类里面提供创建对象的方法
a.饿汉式
b.懒汉式 - 泛型
/**
* 数组里面保存的都是对象的引用(指针)
* 改变数组里面对象的属性变量
* 原始对象的值也跟着改变
* 因为大家都是指向同一个内存空间
*/
技术运用
- 饿汉式
//default , sharedInstance , manager
//2.定义一个静态的成员变量 记录这个单例对象
//饿汉式
public static final Poker shared =new Poker();
//1.默认构造函数
private Poker(){}
public void test(){
}
- 懒汉式
//懒汉式
int count = 0;
//2.创建一个静态变量
private static Player shared = null;
// 1.私有化构造方法
private Player(){}
//3.提供给外部一个访问的方法
public static Player getInstance() {
Object b = new Object();
synchronized (b) {
if (shared == null) {
//如果没有创建 那么就创建一个
shared = new Player();
}
return shared;
}
}
- 泛型
//泛型
ArrayList<Person> people = new ArrayList<>();
//添加数据
Person xw = new Person();
people.add(xw);
Person zs = new Person();
people.add(zs);
//访问数据
Person xw2 = people.get(0);
System.out.println("xw2.name");
}
心得
今天基本上一天都在写demo,上午和下午刚开始都能跟上,但是后面一出一点小问题就跟不上。直到最后我直接就放弃了,还是认真听讲好一点,跟着写就算写完了,也可能因为没有注意听导致不太理解。不过这个demo还是挺有用的,包含的东西也挺多的。所以今天还应该看视频回顾一下,尽量弄懂一些。