2017-08-08 106 views
0

Java的静态字段我有一个Java文件如何扩展在科特林

public class Code { 
    public static final int SUCCESS = 0; 
    public static final int FAIL = 1; 
} 

我创建一个扩展代码类科特林类。

object ResponseCode : Code() { 
    val SKU_STOCK_NOT_ENOUGH = 2000 
} 

我不能在其他Kotlin函数中调用声明ResponseCode.SUCCESS。 我能做些什么来使kotlin类扩展Code类的静态字段。

回答

0

在Kotlin中,与Java不同,静态成员不会被子类继承,尽管它们可以在子类中调用而不指定基类名称。

对于这种情况,您可以使用基类进行调用。或者:

object ResponseCode : Code() { 
    val SKU_STOCK_NOT_ENOUGH = 2000 
    val _SUCCESS = SUCCESS 

} 

另一个选项是声明一个方法而不是变量。

object ResponseCode : Code() { 
    val SKU_STOCK_NOT_ENOUGH = 2000 

    fun SUCCESS(): Int { 
     return SUCCESS 
    } 
} 
+0

感谢您的回答 – Iconoclast