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需要用"文件名"."方法名"的格式对其进行调用

相关推荐
凭君语未可3 分钟前
深度解析Java的多态特性
java·开发语言
csbysj202014 分钟前
DTD 元素:XML 与 SGML 文档结构解析指南
开发语言
傻童:CPU27 分钟前
C语言练习题
c语言·开发语言
极地星光37 分钟前
协程:实战与系统集成(高级篇)
开发语言
0和1的舞者1 小时前
《Git:从入门到精通(八)——企业级git开发相关内容》
大数据·开发语言·git·搜索引擎·全文检索·软件工程·初学者
liulilittle1 小时前
LwIP协议栈MPA多进程架构
服务器·开发语言·网络·c++·架构·lwip·通信
水淹萌龙1 小时前
玩转 Go 表达式引擎:expr 实战指南
开发语言·后端·golang
艾莉丝努力练剑2 小时前
【C++:继承】面向对象编程精要:C++继承机制深度解析与最佳实践
开发语言·c++·人工智能·继承·c++进阶
penguin_bark2 小时前
C++ 异步编程(future、promise、packaged_task、async)
java·开发语言·c++
小龙报2 小时前
《数组和函数的实践游戏---扫雷游戏(基础版附源码)》
c语言·开发语言·windows·游戏·创业创新·学习方法·visual studio