簡體   English   中英

Scala對象擴展了Java類靜態字段

[英]Scala object extends Java class static field

我想知道Scala中Java類的固有靜態字段怎么樣。

這是一個Java示例,如果我是一個名為ClassFromJava的類,我可以擴展它,添加一些靜態字段,並使用子類來訪問VERSION字段。

public class ClassFromJava {
    public static int VERSION = 1;
}

public class ClassFromJavaSub extends ClassFromJava {
    public static String NOTE = "A note";
}

public class Test {
    public static void main (String [] args) {
       System.out.println (ClassFromJavaSub.VERSION); // This works.
    }
}

但是,如果我想在Scala中擴展ClassFromJava,並添加一些常量值,它似乎不起作用。

object ClassFromScala extends ClassFromJava {
    val NOTE = "A Note"
}

object Test {
    def main (args: Array[String]) {
        // This line won't compile
        // ClassFromScala has no value VERSION.
        println (ClassFromScala.VERSION) 
    }
}

如果我想ClassFromScala也有VERSION變量,我該怎么辦?

object ClassFromScala extends ClassFromJava {
  def VERSION = ClassFromJava.VERSION
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM