饿汉式单例--对象在程序运行之初创建

// 单例模式--只创建一个这个类的对象

public class User {

    // 此处静态变量user为User对象,在程序运行之初创建

    // 意味着不管是否需要这个对象,他都会创建一个

    private static var user: User = User()

   

    // 设置成私有,外部不能直接访问

    // 主构造函数不能访问,那么后续便不能再创建User对象

    private User() {

        println("创建了对象")

    }

    // user是静态变量,只能用静态方法访问

    // user设置为私有,createUser()在这是唯一的全局访问点

    public static func createUser(): User {

        user //如有return

    }

}

    // 不能创建User对象

    // var  u1 :User  =User()

    // 调用User的静态方法,将程序之初创建的user赋值给u1、u2

    // 调用不是创建,运行结果只显示一次“创建了对象”

    var u1 = User.createUser()

    var u2 = User.createUser()

 

 

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐