java - 给定它所在的类的类型别名,如何从 Scala 访问 Java 静态方法

标签 java scala static-methods type-alias

给定类型别名 type Cal = java.util.Calendar 如何访问 static getInstance 方法?我在 Scala REPL 中尝试了以下操作:

scala> type Cal = java.util.Calendar
defined type alias Cal
scala> Cal.getInstance
<console>:8: error: not found: value Cal
          Cal.getInstance
          ^
scala> val Cal = java.util.Calendar
<console>:7: error: object Calendar is not a value
   val Cal = java.util.Calendar
                       ^

import java.util.{Calendar => Cal} 后接 import Cal._ 真的是我最好的选择吗?

最佳答案

你不能。

是的,import java.util.{Calendar => Cal} 确实是您最好的选择。

从概念上讲,Scala object 成员类似于 Java 类的静态成员。这可能表明以下内容会起作用,但它不会起作用,因为实际上没有可用于 Java 类的单例对象。

scala> val Cal = java.util.Calendar
<console>:13: error: object Calendar is not a value
       val Cal = java.util.Calendar
                           ^

关于java - 给定它所在的类的类型别名,如何从 Scala 访问 Java 静态方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7668262/

相关文章:

java - 如何打印没有最后一个逗号的数组字符串?

java - 如何使用相对于项目/应用程序的路径的 SQLite 数据库?

java - 如何使用 IN 语句编写 Spring 数据查询?

scala - 从对象中的主要方法调用案例类

scala - 禁用 sbt 子项目文档生成

java - 在 JPA 规范中应用 Order By

scala - 为 Spark-Shell 安装 EMR 依赖项/库

c++ - 在静态函数中返回一个对象而不是构建它有什么好处?

java - 全静态方法和应用单例模式有什么区别?

java - 为什么不从另一个类调用一个类的静态方法 "main"?