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!")
    }
}
相关推荐
进击的荆棘1 分钟前
优选算法——模拟
java·开发语言·算法·模拟
蓝天智能3 分钟前
CMakeLists.txt配置详细介绍
c语言·开发语言·qt
0 0 04 分钟前
CCF-CSP 36-2 梦境巡查(dream)【C++】考点:前缀和
开发语言·c++·算法
徐子童4 分钟前
ArrayList和LinkedList的区别
java·开发语言·数据结构·高频面试题
fengxin_rou5 分钟前
redis主从和集群一致性、哨兵机制详解
java·开发语言·数据库·redis·缓存
Olafur_zbj6 分钟前
【AI】LLM上下文拼接
java·开发语言·spring·llm·context
leo__5209 分钟前
基于C#与HALCON开发的完整视觉检测系统案例
开发语言·c#·视觉检测
猿饵块13 分钟前
python--sys
开发语言·python
故河15 分钟前
Python工具:Conda 包管理器
开发语言·python·conda
亦复何言??17 分钟前
ROS2 节点使用 Conda 环境运行 Python 依赖的解决方案
开发语言·python·conda