Kotlin
文章平均质量分 67
Kotlin学习笔记
Elson_6
Talk is cheap, show me the code.
展开
-
Kotlin基础 — 类和继承
一、类 1.1 类的声明 1.2 构造函数 1.3 类实例的创建 1.4 类成员的组成 二、继承 2.1. 构造 2.2 方法的覆盖 2.3 属性的覆盖 2.4 抽象类 2.5 伴生对象 一、类 1.1 类的声明 类使用 class 关键字声明 Kotlin中的类,默认都是 public final 类型的; class Parent {...原创 2018-03-06 14:43:24 · 283 阅读 · 0 评论 -
Kotlin基础 — 嵌套类、内部类
官方文档:Nested and Inner Classes 目录 嵌套类(静态内部类) Java版本 Kotlin版本 内部类 inner (非静态内部类) Java版本 Kotlin版本 匿名内部类 嵌套类 Java版本 public class Outer { // 外部类成员变量 private String name = "Elson"; ...原创 2018-03-01 13:50:45 · 1403 阅读 · 0 评论 -
Kotlin基础 — 数据类、密封类、枚举类
目录 数据类 数据类的写法 属性声明在类的body()中 对象的Copying 数据类的解构 密封类 枚举类 数据类 1. 数据类的写法 // 使用 data class 修饰 data class Person(val name:String, val age: Int, val city: String) // 不使用 data 修饰 class Person(val ...原创 2018-03-02 10:55:43 · 338 阅读 · 0 评论 -
Kotlin基础 — object
一、Object 表达式 二、object 对象声明 2.1 直接声明 object 对象 2.2 继承自接口(抽象类)的对象声明 2.3 类内部的对象声明 三、伴生对象 Companion Object 3.1 普通的伴生对象 3.2 在伴生对象中实现接口 3.3 伴生对象的扩展 一、Object 表达式 创建匿名内部类的形式:object: ClassName...原创 2018-03-02 20:08:33 · 7187 阅读 · 1 评论 -
Kotlin基础 — 委托
目录 类委托 属性委托 2.1. 方法一:可以按需继承 ReadOnlyProperty、ReadWriteProperty 两个接口中的一个; 2.2. 方法二:自己定义,但方法参数必须和 1 中接口的方法参数一致; 标准委托 3.1. 延迟属性 Lazy 3.2. 可观察属性 Observable 3.3. 把属性储存在映射中 使用场景 类委托(代理模式) Dele...原创 2018-03-02 23:08:13 · 260 阅读 · 0 评论 -
Kotlin基础 — 操作符表
一元操作符 操作符 函数 +a a.unaryPlus() -a a.unaryMinus() !a a.not() a++ a.inc() a– a.dec() 二元操作符 操作符 函数 a + b a.plus(b) a - b a.minus(b) a ...原创 2017-05-20 22:47:20 · 6542 阅读 · 1 评论 -
Kotlin基础 — 操作符:run、with、let、also、apply、takeIf、takeUnless、repeat
概述 分析Kotlin的 Standard.kt 代码,主要分为三部分: 1. run、with、let、also、apply 的比较 2. takeIf、takeUnless、repeat 的使用 3. 异常类的使用 一、run、with、let、also、apply 的比较 所有的总结都源自于代码,所以最终还是要回到代码中找到答案。 示例 1. run() ...原创 2018-02-26 16:35:46 · 3043 阅读 · 0 评论 -
Kotlin基础 — 泛型、变体(协变、逆变、不变)
Java Kotlin 边界 场景 < ? extends T > out 上边界 取值 < ? super T > in 下边界 存值原创 2018-02-28 20:04:02 · 494 阅读 · 0 评论 -
Kotlin基础 — 扩展函数
概述 扩展函数:指在一个类上增加一种新的行为,甚至我们没有这个类代码的访问权限。Java中,类似很多带有static方法的工具类。 优势:不需要在调用方法的时候把整个对象当作参数传入。而是像是属于扩展类的一样,可以使用this关键字和调用所有public方法。 应用场景 参考anko-common 依赖包中ContextUtils、Dialogs 等文件的写法 // 属性扩展 /...原创 2018-03-01 11:03:38 · 436 阅读 · 0 评论