本文介绍了如何在 Java 中使用 Scala 单例对象?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个需要在 Java 类中使用的 Scala 对象.

I have a Scala object that I need to use in a Java class.

这是 Scala 对象

Here's the Scala object

object Person {
  val MALE = "m"
  val FEMALE = "f"
}

如何在 Java 中使用这个 Scala 对象?

How can I use this Scala object in Java?

到目前为止,我已经尝试了以下方法但没有成功(编译错误):

I have tried the following so far without success (compile errors):

  • Person.MALE()//返回一个无用的字符串,因为我想要实际的 Person 对象
  • Person.MALE() //returns a String which is useless as I want the actual Person object

推荐答案

使用 Person$.MODULE$.另见

编辑:一个工作示例(我检查过,它可以编译和工作):斯卡拉:

Edit: A working example (I checked, it compiles and works):Scala:

object Person {
  val MALE = "m";
}

Java 对应:

public class Test {
    Person$ myvar = Person$.MODULE$;

    public static void main(String argv[]) {
        System.out.println(new Test().myvar.MALE());
    }
}

这篇关于如何在 Java 中使用 Scala 单例对象?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-03 05:45