首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
kotlin
florizt
创建于2022-12-01
订阅专栏
kotlin总结
暂无订阅
共34篇文章
创建于2022-12-01
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
密封类(sealed class)
一、什么是受限的类继承结构 上面的几点内容是密封类的特点,请详细的看下去,小生会对这几点内容进行详细的分析。 二、关键字 2.1、声明格式 即 既然密封类是不能实例化,那么我们要怎么使用,或者说它的作
数据类(data class)
一、关键字 1.1、声明格式 或者 说明: 例: 1.2、约定俗成的规定 即,当构造函数中的参过多时,为了代码的阅读性,一个参数的定义占据一行。 例: 1.3、编辑器为我们做的事情 当我们声明一个数据
普通类(class)
一、类 1.1、定义类 可以使用如下代码定义一个类,以及声明它所拥有的字段和函数: 然后使用如下代码创建对象,并对对象进行操作: 和java实例化方式类似,只是去掉类new关键字,之所以这么设计,是因
泛型(in、out、where)
Java 泛型 在学kotlin 泛型之前,先回顾一下Java中的泛型 为了方便说明引入下面几个类 具体代码 不可型变 虽然 Dog 是 Animal 的子类,但是Java 泛型是不可以型变的,Res
高阶函数、lambda表达式
1.函数类型,高阶函数,Lambda,它们分别是什么? 1.1 函数类型是什么? 顾名思义:函数类型,就是函数的类型。 1.2 高阶函数是什么? 高阶函数是将函数用作参数或返回值的函数。 上面的话有点
主构造函数、次构造函数、init函数
研究一下 主构造函数、次构造函数、init代码块、companion object 的执行顺序 直接看示例: 执行 User("bbb") 输出: 得出结论: 伴生对象在类加载的时候就开始初始化,执行
作用域函数 let、also、with、run、apply
在 Kotlin 标准库中,定义了一系列通用的内联函数:T.apply、T.also、T.let、T.run、with。你是否清楚理解它们的用法 & 本质,它们都是扩展函数吗? 在上面的示例中,我们看
扩展函数
为什么要使用扩展? 在 Java 中,我们习惯于把通用代码封装到工具类中,诸如 StringUtils、ViewUtils 等,例如: 在使用时,我们就需要调用StringUtils.firstCha
内联函数
内联函数,顾名思义,就是在编译时将作为函数参数的函数体直接映射到函数调用处,直接用一个例子来说明: 很简单,getStr()中打印了一个字符串,然后requestInfo()中调用了getStr()函
委托
类委托 所谓委托很好理解:本来叫A去做事,而A自己不去做它将其委托给B去做。下面先来看一下类委托: 执行结果如下: 接下来再做一个实验,假如MyClass自己也定义了一个相同的myPrint(),那结
幕后属性
有时候有这种需求,我们希望一个属性:**对外表现为只读,对内表现为可读可写,**我们将这个属性成为幕后属性。 如: 将_table属性声明为private,因此外部是不能访问的,内部可以访问;外部访问
幕后字段
前言(Kotlin的普通属性) 在Kotlin中,getter、setter 是属性声明的一部分,声明一个属性默认提供getter和setter。 跟Java 中的getXX 和 setXX方法作用一
声明属性
声明属性有两种方式 1、主构造函数直接声明 当主构造函数里,有var or val修饰的时候,等价于在类中添加当前属性,意思是将该变量作为类的成员变量来使用。可能是因为主构造函数是类头的一部分。 副构
kotlin总结
属性 声明属性 幕后字段 幕后属性 委托 函数 内联函数 扩展函数 作用域函数 let、also、with、run、apply 主构造函数、次构造函数、init函数 高阶函数、lambda表达式 泛型