Java Math 类 Kotlin 中的类

阿尼尔

我们如何JavaKotlin. 这样我就可以调用类似Math.add(). 我尝试使用伴随对象。让我知道是否有其他方法可以做到。

zsmb13

您可以使用一个简单的object声明来实现该语法:

object Math {
    fun add(x: Int, y: Int) = x + y
}

这将创建一个单例类,在运行时只有一个实例,您可以使用Math.add(1, 4)语法调用此实例上的方法


伴随对象只是这些object嵌套在类中的声明的特例,它们的成员可以通过容器类的标识符访问,类似于 Java 中的静态函数。

您实际上可以在类中嵌套任何对象,companion关键字只是让您无需显式名称即可创建它们。

命名嵌套对象的示例:

class A {
    fun a() {}
    object B {
        fun b() {}
    }
    companion object {
        fun o() {}
    }
}

然后可以像这样调用这些函数:

A().a()          // this call of course needs an instance of A
A.B.b()
A.Companion.o()
A.o()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Math类是Java的标准类吗?

来自分类Dev

在 kotlin 中访问父 Java 类的(静态类)成员

来自分类Dev

kotlin 1.2 中没有 kotlin.Math 类,如文档中所述

来自分类Dev

Kotlin中的类声明

来自分类Dev

Kotlin类中“ this”的目的

来自分类Dev

如何在kotlin中定义类,成员可以在java派生类中访问

来自分类Dev

如何在Kotlin中向Java类添加静态方法

来自分类Dev

Kotlin中的AOP将在Java类中使用

来自分类Dev

Java类,用于从Kotlin中的适配器访问数据

来自分类Dev

Kotlin 和 Java 中带有嵌套类的泛型

来自分类Dev

如何让 VSCode 识别 Java 代码中的 Kotlin 类?

来自分类Dev

防止对 Java / Kotlin 中的类的依赖,但允许扩展

来自分类Dev

密封类中的 Kotlin 数据类

来自分类Dev

如何在Kotlin中获得对Java超类的静态类的引用

来自分类常见问题

为什么Kotlin集合的运行时类是Java类?

来自分类Dev

如何在Java类中导入Kotlin数据类

来自分类Dev

了解Kotlin中的内联类

来自分类Dev

什么是 kotlin 中的内联类?

来自分类常见问题

无法从Java类访问Kotlin接口

来自分类Dev

实现Java接口的Kotlin数据类

来自分类Dev

在android java类中使用Kotlin扩展

来自分类Dev

使用类路径中的 Kotlin 运行时库执行 Java 和 Kotlin 程序

来自分类Dev

Java中的类等效

来自分类Dev

Java中的日历类

来自分类Dev

Java中的整数类

来自分类Dev

Java中的GregorianCalendar类

来自分类Dev

Java中的高斯类

来自分类Dev

引用Java中的类

来自分类Dev

调用Java中的类?