Kotlin与Java @Overrides的比较

4
如下所示,https://dev59.com/RmQn5IYBdhLWcg3wtpBW#16639438,在Java中,当一个声明的类是public时,你可以重写它的函数。
但我想知道如何在Kotlin中实现完全相同的代码,我已经尝试了很多次,但没有找到任何关于这个主题的东西。虽然我可以直接在Java中完成这个任务,但我的其余代码都是用Kotlin编写的,而且我不能就这样放着这种疑问不管;对我来说,Kotlin感觉像一个很棒的工具,我想学习所有相关内容。

告诉我们你在代码中尝试了什么,但没有起作用。 - Brijesh Joshi
2个回答

7
如果您想覆盖方法,请使用override关键字。就像这样。
override fun addNumber(i : Int) {
  val sum = i+10
}

您必须使用 open 关键字声明要重写的方法。如果不这样做,就无法重写该方法。

open fun addNumber(i : T)

3

您可以使用override关键字覆盖函数和属性。但是请注意,在Kotlin中,默认情况下,类是不可扩展的,所以如果要扩展类(Java类仍然是可扩展的,除非使用final),您必须使用open声明父级(即open class MyClass())。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接