在Scala中,为什么getInstance无法使用GregorianCalendar?

del*_*ber 9 scala

java.util.GregorianCalendar.getInstance();
Run Code Online (Sandbox Code Playgroud)

适用于Java

java.util.Calendar.getInstance();
Run Code Online (Sandbox Code Playgroud)

在Scala中工作

java.util.GregorianCalendar.getInstance();
Run Code Online (Sandbox Code Playgroud)

Scala失败.getInstance不是对象java.util.GregorianCalendar的成员

Did*_*ont 22

在scala中没有静态,而是在单例对象和方法中,因此它们不被认为是继承的,即使在java中定义也是如此.getInstance定义于Calendar.在java中,调用它GregorianCalendar会调用与调用它完全相同的方法Calendar.在scala中,你必须打电话给它Calendar.(顺便说一句,在java中用GregorianCalendar调用它是相当误导的)

  • +1完全同意java中的误导用法,这件事总是困扰我. (5认同)