单例模式的简单理解(Java)

    技术2023-10-05  67

    单例模式:构造方法私有 只产生一个实例

    package com.jing.test; //单例模式:构造方法私有 只产生一个实例 public class Single { //static Single s;//封装性:为了安全起见,一般加上private private static Single s; private Single() { //构造器私有:这样就只能自己类去调用构造器 } /*提供一个public的获取对象的方法getSingle(),方法里判断是否有该类对象,如果没有就new一个,如果有就返回该对象,单例模式要求只能产生一个实例,所以通过static修饰符让他只执行一次,而静态方法不能访问非静态资源,所以s也需要用static修饰 */ public static Single getSingle() { /*对象声明放在这里编译报错:提示变量未进行初始化。 原因是将s放在方法中必须先进行赋值才能使用,否则编译报错,这里不能给他直接new对象,需要放在类中也就是方法体外先进行初始化,进而进行判断。*/ //Single s; if (s==null) { s = new Single(); } return s; } public static void main(String[] args) { Single.getSingle();//静态资源可以直接通过类名去访问 } }
    Processed: 0.010, SQL: 9