扩展
Kotlin 可以对一个类的属性和方法进行扩展,且不需要继承或使用 Decorator 模式。
扩展是一种静态行为,对被扩展的类代码本身不会造成任何影响。
- 扩展函数的声明非常简单,它的关键字是 < Type >,此外我们需要一个接收者类型,通常是类或接口的名称来作为它的前缀
- 如下扩展Person类
fun main(args: Array<String>) {
var person = Person("张三")
person.print()
}
class Person ( var name:String)
fun Person.print(){
println("用户名 $name")
}
标准库中的扩展函数:apply,with,run,let,also,takeIf
- apply:返回的是原来的对象
fun main(args: Array<String>) {
val stu = Student("张三",15)
stu.apply {
val name = name
val age = age
}