kotlin
文章平均质量分 70
renxhui
android 开发工程师
展开
-
Kotlin学习系列(六):委托及其原理
类委托类委托其实对应于Java中的代理模式interface Base{ fun text()}//被委托的类(真实的类)class BaseImpl(val x :String ) : Base{ override fun text() { println(x) }}//委托类(代理类)class Devices (b :Base) :Base by bfun main(){ var b = BaseImpl("我是真实的类")原创 2021-10-08 10:08:01 · 465 阅读 · 0 评论 -
Kotlin 学习系列(五):数据类和密封类
数据类data class A(var name: String, var age: Int)这就是一个简单的数据类,看下反编译成java代码会是什么样public final class A { @NotNull private String name; private int age; @NotNull public final String getName() { return this.name; } public final voi原创 2021-09-26 11:31:01 · 199 阅读 · 0 评论 -
Kotlin学习系列(四):扩展
概述Kotlin 可以对一个类的属性和方法进行扩展,扩展不会对原有的类有影响扩展方法扩展方法可以在已有的类添加新的方法,不会对原有的类有影响写法如下:fun receiverType.functionName(params){ body}receiverType:表示函数接收者,也就是要扩展方法的类名functionName:表示扩展函数的名称params:表示扩展函数的参数,可以为null下面是个例子:class A(var name111: String) {}原创 2021-09-18 17:37:55 · 341 阅读 · 0 评论 -
Kotlin学习系列(三):从java角度理解伴生对象
概述如何反编译kt文件成java文件1 点击Android Studio Tools点击Decompilekt文件反编译后的java文件有了这个操作,就可以很快的理解kotlin中的概念了包级函数,包级属性kotlin和java有个地方不同,就是函数和属性可以不需要定义再类里面kotlin 定义一个包级函数,和包级属性const val name : String = "hahha"var age :Int = 12fun saySome(){ println原创 2021-09-17 17:10:45 · 274 阅读 · 0 评论 -
Kotlin学习系列(二):继承
继承kotlin中所有的类都有一个共同的超类 Any和java中的object一样的,默认情况下,kotlin类都是public final的不可继承的,如果让一个类可被继承咋需要用open关键字修饰//表示可被继承open class Base {}kotlin 中使用:来表示继承,类似java中的extends如果子类有主构造函数如果子类有主构造函数,那么父类需要在主构造函数中立即初始化open class Base(a :Int) { open fun text(){原创 2021-09-16 15:34:20 · 415 阅读 · 0 评论 -
Ktolin学习系列(一):基础
概述现在Kotlin很多开源项目都已经开始用了,再不学习就看不懂开源了,开始学起变量定义可变变量定义var 变量名 : 变量类型 = 变量值var name :String = "小明"//相当于javaString name = "小明"var name = "小明" //编译器自动推到类型为String//注意这种写法,只能是局部变量var aa : String //先定义不初始化,必须要有类型aa = "aa"不可变变量定义val 变量名 :变量类型 =原创 2021-09-16 11:16:05 · 273 阅读 · 0 评论