scala – 将对象声明为“final”的意义是什么?
发布时间:2020-12-16 09:47:47 所属栏目:安全 来源:网络整理
导读:我只是注意到,有可能在Scala中将对象声明为final: final object O 有什么要点?无论如何不能继承对象: object Aobject B extends A // not found: type A 解决方法 不是任何人这样做,但是: $ scala -Yoverride-objectsWelcome to Scala version 2.11.2
我只是注意到,有可能在Scala中将对象声明为final:
final object O 有什么要点?无论如何不能继承对象: object A object B extends A // not found: type A 解决方法
不是任何人这样做,但是:
$ scala -Yoverride-objects Welcome to Scala version 2.11.2 (Java HotSpot(TM) 64-Bit Server VM,Java 1.8.0_11). Type in expressions to have them evaluated. Type :help for more information. scala> trait A { object O } ; trait B extends A { override object O } defined trait A defined trait B scala> trait A { final object O } ; trait B extends A { override object O } <console>:8: error: overriding object O in trait A; object O cannot override final member trait A { final object O } ; trait B extends A { override object O } ^ 可能有时人们想做。 (For instance.) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |