- 博客(5)
- 资源 (4)
- 收藏
- 关注
原创 Kotlin学习系列之:委托(Delegate)
1. 引入:委托作为一种传统的设计模式,在Java中要想实现这种设计模式,就需要自己进行类的结构设计来实现。而在Kotlin中,提供语言层面上的支持,我们可以通过by关键字很轻松就能实现。2. 类委托(class delegate) 自己动手实现委托: interface ServerApi { fun login(username: String, password: S...
2019-08-15 16:28:10 2711
原创 理解设计模式之:状态模式
1. 定义:当一个对象的内在状态改变时,允许改变其行为,这个对象看起来像是改变了其类。2. 对状态模式的理解:状态模式中的行为是由状态决定的,不同的状态下有不同的行为。状态模式的意图是让一个对象在其内部状态改变的时候,其行为也随之改变。3. 状态模式中的角色:Context:环境角色,定义客户感兴趣的接口,维护一个State子类的实例,这个实例定义了对象的当前状态 State:抽象状...
2019-08-13 19:22:34 206
原创 Kotlin学习系列之:运算符重载(operator overloading)
1.引入:运算符重载,最初接触到这个概念是在C++里,Java中是没有的,取而代之的是通过特定接口来实现,比如进行排序比较大小时,我们可以实现Comparable接口。而Kotlin中,又重新支持该特性,因为这样会显得更加直观。2.如何实现运算符重载: 方式一:在类内定义,以成员方法(member)的形式 比如,我们定义一个Point类: data class Point(va...
2019-08-08 21:09:10 1523
原创 Flutter和Dart系列十:Json序列化
在前一篇我们已经可以在Flutter中同服务器进行交互了,但是那时我们是通过String来接收的,即可以拿到json格式的数据,那么怎么来解析成实体对象呢?1. 手动解析:借助于dart的内置库(dart:convert)dart:convert中有俩个top-level function:jsonDecode()、jsonEncode(),分别用来解析json和生成json。给定一段...
2019-08-06 10:26:51 1504 1
原创 Kotlin学习系列之:协程的创建(二)
在系列一中,我们已经对协程有了初步的了解,我们在此篇继续。前面我们是通过GlobalScope.launch{}这个协程建造器来创建协程的,它的特点就是: Launches a new coroutine without blocking the current thread. 即不会阻塞当前的线程的运行。我们再来接触一个不一样的协程建造器: runBlocking{} ...
2019-08-01 16:57:13 351
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人