我试图覆盖,看起来有点像这个斯卡拉 - 无法覆盖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
不,根本无法覆盖字段。你究竟想实现什么? –