美文网首页
8.扩展成员

8.扩展成员

作者: 学吉他的袁先生 | 来源:发表于2020-07-28 14:42 被阅读0次

针对实际开发中的各种utils
定义:
1.为现有类添加方法、属性
2.java调用扩展成员类似调用静态方法

//java中TextUtils.isEmpty()的实现
public static boolean isEmpty(@Nullable CharSequence str) {
       return str == null || str.length() == 0;
}

Kotlin 扩展方法

private var text:String?=null
fun String?.isEmpty(): Boolean{
    return this == null || this.length == 0
}
fun main() {
    val empty = text.isEmpty()
}

同样支持扩展操作符方法

operator fun String.times(int: Int): String{
    val stringBuilder = StringBuilder()
    for(i in 0 until int){
        stringBuilder.append(this)
    }
    return stringBuilder.toString()
}
fun main() {
    println("abc" * 16)
}

kotlin扩展属性,扩展属性不支持backfield

var String.a: String
    get() = "abc"
    set(value) {
        field=value//field报错找不到
    }

相关文章

  • 8.扩展成员

    针对实际开发中的各种utils定义:1.为现有类添加方法、属性2.java调用扩展成员类似调用静态方法 Kotli...

  • 类扩展&分类

    1、类扩展,extension,可以扩展属性(成员变量) @interface LYViewController(...

  • 28. 扩展成员

    当一个已经完成的类、函数、对象等,需要更多的功能的时候,只能去修改原来的代码吗?当然不是。在 kotlin 中,我...

  • 2018-01-11ES6阮一峰教程摘记4 数组的扩展

    8.数组的扩展 1.扩展运算符 将数组转为用逗号分隔的参数序列,主要用于函数调用 例子: function add...

  • 类的加载(三)

    类扩展 类扩展 VS 分类 category 专门用来给类添加新的方法 不能给类添加成员属性,添加了成员变量,也...

  • 8.函数的扩展

    1.函数参数的默认值 ES6 之前,不能直接为函数的参数指定默认值,只能采用变通的方法。 ES6 允许为函数的参数...

  • 8.对象的扩展

    回到目录 概要 属性的简洁表示 略 属性名表达式 例如 react 中 这样只要一个方法就可以完成三个 state...

  • Python OOP-4

    8. 类的成员描述符(属性) 类的成员描述是为了在类中对类的成员属性进行相关操作而创建的一种方式get:获取属性的...

  • 快速上手 Kotlin 开发系列之扩展函数

    本节将着重介绍扩展函数 Kotlin 中有一个非常大的优势,就是可以静态的给一个类扩展它的成员方法,以及成员变量 ...

  • iOS之扩展和代理

    扩展 Q:我们一般用扩展做什么? A:声明私有属性,声明私有方法(没什么意义),声明私有成员变量 Q:扩展的特点 ...

网友评论

      本文标题:8.扩展成员

      本文链接:https://www.haomeiwen.com/subject/skpfrktx.html