作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
据我所知,键入 Any
在 Kotlin
类似于 Object
在 java
默认情况下,它由我们声明的任何类实现。我想把类名扩展成一个新的val
classTag
.因此,
当我扩展一个函数时,它工作正常,
fun Any.getClassTag(): String { return this::class.java.simpleName }
val
时,我发现编译器错误。类型。
val Any.classTag: String { return this::class.java.simpleName }
Function declaration must have a name
最佳答案
您将在这一行中遇到几个错误:
Error:(1, 0) Extension property must have accessors or be abstract
Error:(1, 23) Property getter or setter expected
Error:(1, 24) Expecting a top level declaration
Error:(1, 25) Function declaration must have a name
Error:(1, 34) 'this' is not defined in this context
val Any.classTag: String get() { return this::class.java.simpleName }
get()
访问器就在您的 block 之前。
关于android - 如何在 Kotlin 中为 Any 类型声明扩展 val,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56748176/
我是一名优秀的程序员,十分优秀!