我試圖覆蓋,看起來有點像這個斯卡拉 - 無法覆蓋Java類
public class ExampleJava {
public ExampleJava(String string) {
}
protected String string;
}
當我使用
class ExampleScala(string : String) {
@Override
protected override def string : String
}
在斯卡拉
一個Java類的受保護的變量時,編譯器會發出錯誤:
Error:(5, 7) overriding method string in class ExampleScala of type =>
java.lang.String;
variable string in class ExampleJava of type net.java.lang.String has incompatible
type;
(Note that method string in class ExampleJava of type => java.lang.String is
abstract,
and is therefore overridden by concrete variable string in class ExampleJava of type
java.lang.String)
class ExampleScala(material : Material) extends ExampleJava(string : String) {
^
更新:我不能莫迪fy ExampleJava,因爲它在一個程序中被擴展,如果這個被釋放它不會工作
任何方式做這樣的事情,而不改變ExampleJava?我不能瓶坯修改ExampleJava因爲它是在正在擴展程序,如果這個被釋放它不會工作。 – yayestechlab
不,根本無法覆蓋字段。你究竟想實現什麼? –