Kotlin 扩展函数/属性
来源:互联网 发布:淘宝店升级天猫店 编辑:程序博客网 时间:2024/05/18 02:35
前言
扩展函数和扩展属性在 Java 里面是没有的,这样的话很好的弥补了 Java 的缺陷。所谓扩展方法或者属性是指在原来没有的方法或者属性上进行扩展,不会改变原来的属性和方法。
扩展函数
声明扩展函数的方法是先写上要扩展的类名,之后在写扩展方法。
对 Book 这个类进行扩展,这个类只有一个方法,在我们不修改 Book 类的前提下对其进行扩展。
class Book(val name: String, var price: Int) { val ISBN: Int = 123456789 fun add() { println("Add a book,name is $name,price is $price,ISBN is $ISBN") }}
fun Book.show() = add()
这样我们便完成了对 Book 类进行扩展。
在扩展函数中,可以使用原有类的方法,变量。
fun main(args: Array<String>) { val book = Book("红楼梦", 50) book.show()}
扩展是静态解析的
扩展不能真正的修改他们所扩展的类。通过定义一个扩展,你并没有在一个类中插入新成员, 仅仅是可以通过该类型的变量用点表达式去调用这个新函数。
扩展属性
扩展属性不能初始化器,所以只能是使用显示 get/set
方法进行定义。
任就采用上面的例子。给 Book
添加一个 profit
属性。
像这个样子,我们就定义了这个类的扩展属性
val Book.profit: Int get() = price - 20
fun main(args: Array<String>) { val book = Book("红楼梦", 50) book.show() println("book's profit is ${book.profit}")}
更多关于扩展函数/方法的例子可以参考官方网站
kotlin官方文档(中文)
kotlin官方文档(英文)
个人博客ISLAND
阅读全文
0 0
- Kotlin 扩展函数/属性
- kotlin的扩展函数和扩展属性
- Kotlin-12.扩展函数和属性(extensions)
- 解析Kotlin函数和属性扩展
- android kotlin扩展函数
- Kotlin的扩展属性和扩展方法
- kotlin随笔—扩展函数
- Kotlin 标准库扩展函数
- Kotlin 标准库扩展函数
- kotlin学习day11:扩展函数
- 《Kotlin项目实战开发》第6章 扩展函数与属性
- Kotlin编程之扩展属性和扩展伴生对象
- Kotlin 扩展函数详解与应用
- Kotlin 扩展函数 与 JS 的 prototype
- Kotlin委托&扩展&高阶函数
- Kotlin-扩展
- kotlin-扩展
- Kotlin 扩展
- 皮克定理
- Android 显示原理简介
- PAT_1073. Scientific Notation
- 邮件系统
- 欢迎使用CSDN-markdown编辑器
- Kotlin 扩展函数/属性
- 深入理解Java虚拟机(一)Java内存区域与内存溢出异常
- 16.Hadoop架构再探讨第2部分
- 2017中国大学生程序设计竞赛
- debian linux 修改时区
- #pragma once用法总结
- ajax无刷新分页效果
- FIREWALLD
- android屏幕适配,自动生成不同的dimens.xml详解