Kotlin中实现静态

实现"类似静态"

Kotlin 复制代码
class Util {
    fun action1() {}

    //使用companion object关键字会在类的内部创建一个伴生类,每个类都允许有一个伴生类
    //而action2作为伴生类中的方法,可以直接通过类名进行调用,实现类似"静态"的效果
    companion object {
        fun action2() {
            println("This\'s action2!")
        }
}

实现"实质静态"

  1. 伴生类 + 注解
Kotlin 复制代码
class Util {
    fun action1() {}

        @JvmStatic
        fun action2() {
            println("This\'s action2!")
        }
}
  1. 顶层方法

Kotlin中的顶层方法指的是未定义在任何类中的方法,编译器会将所有顶层方法都编译为静态方法。Kotlin通过方法名即可直接调用顶层方法,而Java需要用"文件名"."方法名"的格式对其进行调用

相关推荐
每次的天空16 分钟前
Android-自定义View的实战学习总结
android·学习·kotlin·音视频
苦夏木禾18 分钟前
js请求避免缓存的三种方式
开发语言·javascript·缓存
超级土豆粉26 分钟前
Turndown.js: 优雅地将 HTML 转换为 Markdown
开发语言·javascript·html
wei_shuo1 小时前
飞算 JavaAI 开发助手:深度学习驱动下的 Java 全链路智能开发新范式
java·开发语言·飞算javaai
熊猫钓鱼>_>1 小时前
用Python解锁图像处理之力:从基础到智能应用的深度探索
开发语言·图像处理·python
GO兔2 小时前
开篇:GORM入门——Go语言的ORM王者
开发语言·后端·golang·go
好开心啊没烦恼2 小时前
Python 数据分析:numpy,抽提,整数数组索引与基本索引扩展(元组传参)。听故事学知识点怎么这么容易?
开发语言·人工智能·python·数据挖掘·数据分析·numpy·pandas
future14123 小时前
C#学习日记
开发语言·学习·c#
king_harry3 小时前
Java程序-OceanBase Connector/J 示例
开发语言
傻啦嘿哟4 小时前
Python 办公实战:用 python-docx 自动生成 Word 文档
开发语言·c#