您可以在Kotlin中使用接口委托时显式调用父类吗?

达到

我使用这里描述的接口委托有没有办法使用它,但是重写并显式调用父类(委托)?

这些方面的内容(无法编译):

class Rect(val width: Int, val height: Int, position: Position) : Positionable by DefaultPositionable(position) {

    override fun getPosition() {
        val parent = super.getPosition()
        return parent.copy(x = parent.x + 1)    
    }
}
康沃尔

delegate在这种情况下,您将无法访问作为解决方法,您可以使用下一种方法

class Rect(
    val width: Int,
    val height: Int,
    val pos: Position,
    private val positinable: Positionable = DefaultPositionable(pos)
) : Positionable by positinable {
    override fun getPosition(): Position {
        val parent = positinable.getPosition()
        return parent.copy(x = parent.x + 1)
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

您可以显式地使用祖先的虚拟类方法作为派生方法吗?

您可以从子类接口的接口调用父接口的默认方法吗?

您可以在Kotlin中使用通用的主要构造函数吗?

您可以在Listener类中使用Adapter吗?

您可以将Kotlin接口的作用域限定为仅用于某些类吗?

我可以在特征中使用父类的属性吗?

在Haxe中,您可以在接口中使用通用类型来约束类型参数吗?

您可以在getElementById中使用通配符吗?

父类可以调用子类方法吗?

您可以使用带有指定初始值设定项的显式构造函数吗?

您可以在Stripe的“嵌入式付款表”中使用“身份验证和捕获”吗?

可以在Kotlin中使用继承类的val覆盖var吗?

C++11:我可以显式调用基类析构函数来销毁派生类吗?

C ++:您可以执行lambda隐式副本捕获加上显式副本捕获吗?

我可以用Java扩展Kotlin委托类吗?

您可以在 angularfire2 中使用 firebase“可调用函数”吗?

可以在带有C ++ 17的GCC中使用显式寄存器变量吗?

我可以在 Math.NET 中使用显式打印的乘法符号获得 LaTeX 输出吗?

您可以在类主体中使用未实现的Java方法(类似于python pass)吗?

类是否可以在协议扩展上显式调用方法?

您可以在正在测试的类中模拟方法调用吗?

定位JavaScript时,可以在Kotlin中使用协程吗?

在Python中使用类方法时,可以解构`self`吗?

我可以在ES6的父类的静态方法中使用类变量吗?

您可以在Java和Selenium中创建用于显式等待的通用或可重用方法吗?

当接口位于可移植类库中时,PEVerify在显式接口属性上失败

在 Python 中使用继承时,派生类中的同名方法在父类中被错误调用

如何从XAML显式调用接口?

在Typescript中使用接口或类时