1.为现有类添加方法和属性
2.对现有类添加属性的时候不能直接赋值
--------------------------------------------kotlin代码-------------------------------------------------------------------
/**
* 扩展String的方法
*/
fun String.multi(int: Int): String {
val sb = StringBuilder()
for (i in 0 until int) {
sb.append(this)
}
return sb.toString()
}
/**
* 扩展String方法重写操作符
*/
operator fun String.times(int: Int): String {
val sb = StringBuilder()
for (i in 0 until int) {
sb.append(this)
}
return sb.toString()
}
/**
* 扩展成员变量 必须要get方法
*/
val String.a: String
get() = "aaa"
/**
* 输出结果:
abcabcabcabcabcabcabcabcabcabc
abcdabcdabcdabcdabcdabcdabcdabcdabcdabcd
aaa
*/
fun main(args: Array<String>) {
println("abc".multi(10))
println("abcd" * 10)
println("454".a)
}--------------------------------------------java代码----------------------------------------------------------------------
public class ExtendJava {
public static void main(String[] args) {
/**
* 输出结果=>abcabcabcabcabcabcabcabcabcabc
* =>aaa
*/
System.out.println(ExtendKt.times("abc", 10));
System.out.println(ExtendKt.getA("345"));
}
}
本文介绍了如何使用Kotlin为现有类添加方法和属性,详细解释了扩展的实现方式,对比了与Java代码的区别。

被折叠的 条评论
为什么被折叠?



