我是Kotlin的新手,我很困惑 open
和 public
关键字。谁能告诉我这些关键词之间的区别?
我是Kotlin的新手,我很困惑 open
和 public
关键字。谁能告诉我这些关键词之间的区别?
该 open
关键字表示“打开扩展名”:
该
open
注释 类 与Java相反final
:它允许其他人继承这个类。通过 默认,Kotlin的所有课程都是final
,对应于 有效的Java,第17项:继承的设计和文档,或者禁止它。
您还需要明确表示要进行覆盖的方法,并标记为 open
:
open class Base {
open fun v() {}
fun nv() {}
}
该 public
关键字充当可见性修饰符,可应用于类,函数等。
注意 public
如果没有明确指定其他内容,则为默认值:
如果未指定任何可见性修饰符,
public
默认情况下使用,这意味着您的声明将随处可见
该 open
关键字表示“打开扩展名”:
该
open
注释 类 与Java相反final
:它允许其他人继承这个类。通过 默认,Kotlin的所有课程都是final
,对应于 有效的Java,第17项:继承的设计和文档,或者禁止它。
您还需要明确表示要进行覆盖的方法,并标记为 open
:
open class Base {
open fun v() {}
fun nv() {}
}
该 public
关键字充当可见性修饰符,可应用于类,函数等。
注意 public
如果没有明确指定其他内容,则为默认值:
如果未指定任何可见性修饰符,
public
默认情况下使用,这意味着您的声明将随处可见
class A { ... }
在Java中等于 open class A { ... }
在科特林。
final class B { ... }
在Java中等于 class B { ...}
在科特林。
它与之无关 public
。
在Kotlin中,没有访问修饰符的一切都是 public
默认。你可以明确地说 public
在定义中,但在Kotlin中没有必要。
所以,
public class A { ... }
和
class A { ... }
在Kotlin是一样的。