package com.anonymous.javase.day02;
/**
*1:创建一个静态私有化自身对象
*2:私有化自身构造器
*3:提供一个公共静态方法,来返回对象
*
*/
//饿汉式
class Fathers{
//1:创建一个静态私有化自身对象
private static Fathers f = new Fathers();
//2:私有化构造
private Fathers(){}
//3:提供一个静态方法,返回自身对象
public static Fathers getInstance(){
return f;
}
public void eat(){
System.out.println("饿汉式");
}
}
//懒汉式
class Fathers2{
//1:创建一个静态私有化自身对象
private static Fathers2 f = null;
//2:私有化构造
private Fathers2(){}
//3:提供一个静态方法,返回自身对象
public static Fathers2 getInstance(){
if(f==null){
f = new Fathers2();
}
return f;
}
public void eat(){
System.out.println("懒汉式");
}
}
public class Test {
public static void main(String[] args) {
Fathers.getInstance().eat();;
Fathers2.getInstance().eat();
}
}
设计方法-----单利模式(懒汉式和饿汉式)
最新推荐文章于 2024-05-14 00:40:38 发布
本文介绍了两种常见的单例模式实现方式:饿汉式和懒汉式。饿汉式单例模式在类加载时就完成了初始化,因此可以实现线程安全且不需要加锁;而懒汉式单例模式则是在第一次调用getInstance方法时进行实例化,这种方式可以实现按需加载。通过对比这两种方式的特点,有助于读者更好地理解和应用单例模式。
7125

被折叠的 条评论
为什么被折叠?



