Kotlin单例类

什么是单例类?

单例类是在全局上只能创建一个实例的类,其可避免创建重复对象。

单例类实现

Java实现:

java 复制代码
public calss Singleton {

    private static Singleton instance;

    private Singleton() {}

    public synchronized static Singleton getInstance() {
        if (instance == null) {
            instance = new Singleton();
        }
        return instance;
    }

    public void singletonTest() {
        System.out.println("The singleton instance has been created successfully!")
    }
}

/*synchronized关键字用于控制对代码块或方法的访问,
以确保在同一时间只有一个线程可以执行特定代码段。
这主要用于实现线程同步,
防止多个线程同时访问共享资源而导致的数据不一致问题。*/

Kotlin实现:

Kotlin 复制代码
object Singleton {}    //Kotlin中单例类的实现是全自动的,如此便已是一个单例类

object Singleton {
    fun singleTest() {
        println("The singleton instance has been created successfully!")
    }
}
相关推荐
buhuizhiyuci8 小时前
【QT-百日筑基篇】修真世界摸爬滚打多年,终于黄天不负有心人,突破炼器中期——常用控件QWight的属性
开发语言·c++·qt·gui·图形化
Littlehero_12110 小时前
QT自定义控件之热换站系统(源码开源)
开发语言·qt
meilindehuzi_a10 小时前
Python 基础语法(1):常量、变量、类型、输入输出与运算符
开发语言·python
caimouse10 小时前
ReactOS 窗口系统分析(5):可见区域与窗口 DC — vis.c + windc.c
c语言·开发语言
OPEN-F10 小时前
Python进阶教程:装饰器与生成器深入
开发语言·python
千里码aicood11 小时前
基于Python的电商数据采集系统(大数据+爬虫)
开发语言·python
福大大架构师每日一题12 小时前
ragflow v0.27.0 发布:Go 后端全面对齐、智能体搜索与知识编译大升级,超全更新解析
开发语言·后端·golang
陈皮波比茶12 小时前
Python项目实战-网络机器人(爬虫)
开发语言·网络·爬虫·python·机器人
Android-Flutter12 小时前
android kotlin launch 源码分析
android·kotlin
Android-Flutter13 小时前
android kotlin 状态机 Continuation 详解
android·kotlin