Kotlin学习
文章平均质量分 74
程序员丶星霖
永远不要觉得自己一无是处,因为你的力量一旦被发掘,无人匹敌,fighting!!!
展开
-
Kotlin学习之类
Kotlin学习之类@(Kotlin学习)Kotlin在面向对象上具有和Java相似的特征,但是针对不同的情况进行了不同的优化。一、定义类Kotlin中使用关键字class声明类:class 类名 [主构造函数]{ //类成员}类声明由类名、类头(指定其类型参数、主构造函数等)和由大括号包围的类体构成。如果一个类没有类体,也可以省略花括号:c...原创 2018-03-15 09:35:25 · 215 阅读 · 0 评论 -
Kotlin学习之可变与不可变集合
Kotlin学习之可变与不可变集合@(Kotlin学习)一、可变集合与不可变集合有哪些?Kotlin集合框架在kotlin.collections包内,如下: 接口: - Iterable<E>与MutableIterable<E>; - Iterator<E>与MutableIterator<E>; - Collection...原创 2018-04-12 21:38:05 · 2112 阅读 · 0 评论 -
Kotlin学习之空安全
Kotlin学习之空安全@(Kotlin学习)Kotlin相对于Java有许多改良的地方,空安全就是其中的一部分,Kotlin因此解决了空指针问题。一、空安全Java语言中没有C/C++的指针,取而代之的是引用。在Java支持的四种数据类型(类、接口、数组、基本类型)中,类、接口和数组统称为引用类型,定义一个引用类型变量需要两个步骤:定义一个引用类型的变量。St...原创 2018-04-10 23:30:26 · 298 阅读 · 0 评论 -
Kotlin学习之伴生对象
Kotlin学习之伴生对象Kotlin中没有静态成员,主要原因在于它允许包级属性和函数的存在;Kotlin为静态成员提供了多种替代的方案: - 使用包级属性和函数:主要用于全局常量和工具函数; - 使用伴生对象:主要用于与类有紧密联系的变量和函数; - 使用@JvmStatic注解:与伴生对象搭配使用,将变量和函数声明为真正的JVM静态成员。一、伴生对象Kotlin中的对象指...原创 2018-04-03 09:57:35 · 805 阅读 · 0 评论 -
Kotlin学习之访问修饰符
科特林学习之访问修饰符@(科特林学习)类,对象,接口,构造函数,方法,属性和它们的setter方法都可以有访问修饰符。在Kotlin中有这四个可见性修饰符:- private - protected - internal - public如果没有显式指定修饰符的话,默认可见性是公开的,如果需要其他任何访问修饰符都是在缩小访问范围,真正的起到了“访问控制”。一...原创 2018-04-01 17:35:09 · 416 阅读 · 0 评论 -
Kotlin学习之密封类
Kotlin学习之密封类@(Kotlin学习)密封类是Kotlin中的一个高级类,有如下特点: - 密封类是为继承设计的,是一个抽象类; - 密封类的子类是确定的,除了已经定义好的子类外,不能再有其他子类。密封类用来表示受限的类继承结构:当一个值为有限集中的类型、而不能有任何其他类型时。一、定义要声明一个密封类,需要在类名前面添加sealed修饰符。如下例:se...原创 2018-04-08 23:21:31 · 1129 阅读 · 0 评论 -
Kotlin学习之抽象类和接口
Kotlin学习之抽象类和接口@(Kotlin学习)抽象类和接口是面向对象的高级特性。一、抽象类类和其中的某些成员可以声明为abstract。抽象成员在本类中可以不用实现。abstract class 抽象类名[(主构造函数)] [: 继承父类和实现接口]{......}Kotlin中的类默认不可继承,但抽象类就是为继承设计的,因此即使不用open关键字修...原创 2018-03-31 09:25:36 · 282 阅读 · 0 评论 -
Kotlin学习之流程控制
Kotlin学习之流程控制@(Kotlin学习)Kotlin的流程控制,可以分为条件语句和循环语句。一、条件语句1.1if-else条件判断语句Kotlin中的if条件语句与其他类C语言相比,最大的区别在于if语句本身就是个有返回值的表达式。所以也就不需要三元运算符(条件?然后:否则),因为if就能胜任。下面用一个函数做一下对比:// Java 语言写法p...原创 2018-03-14 09:26:37 · 286 阅读 · 0 评论 -
Kotlin学习之属性
Kotlin学习之属性@(Kotlin学习)Kotlin中的属性主要有以下几点: - Kotlin中允许包级属性的存在,即属性不一定在类里; - 所有非抽象属性都强制要求初始化,没有初始化的属性无法通过编译; - 标准化的getter和setter; - 大量的高级属性修饰符。一、声明属性Kotlin的类可以有属性。属性可以用关键字var声明为可变的,也可以是使用val...原创 2018-03-20 09:54:51 · 477 阅读 · 0 评论 -
Kotlin学习之数组
Kotlin学习之数组@(Kotlin学习)Kotlin中的数组采用Array<T>类定义,抛弃了类C语言中“元素类型[]”的定义方式。数组在Kotlin中使用Array类来表示,它定义了get和set函数和size属性,以及一些其他有用的成员函数。一、创建一个数组一般创建数组时不会使用Array类的构造函数,需要分三种情况创建数组;1.1创建已知所有元...原创 2018-03-12 22:47:59 · 1550 阅读 · 0 评论 -
Kotlin学习之运算符
Kotlin学习之运算符@(Kotlin学习)一、操作符重载Kotlin有一些固定数量象征性的操作符,可以在任何类中使用它们。方法就是创建一个方法,方法名为保留的操作符关键字,这样就可以让操作符的行为映射到此方法上。重载操作符可以增加代码可读性和简洁性。1.1什么是操作符重载?例如,同样是一个+号,在两个数字之间表示加法,在两个字符串之间则表示将它们连接成一个新字符...原创 2018-03-12 22:46:21 · 2409 阅读 · 0 评论 -
Kotlin学习之基础数据类型
Kotlin学习之基础数据类型@(Kotlin学习)Kotlin的基础数据类型包括数字类型、字符类型、字符串类型和布尔类型。一、数字类型除char类型外,Java中的基本数据类型在Kotlin中都有相应的数据类型,而且长度都是相同的: Kotlin类型 Java类型 长度 Byte byte 8 Short short 16...原创 2018-03-10 22:47:12 · 298 阅读 · 0 评论 -
Kotlin学习之定义函数
科特林学习之定义函数@(科特林学习)一,定义函数科特林中的函数比的Java中的方法更灵活,用途更广,功能更强。定义方式如下:[访问控制符] [修饰符] fun [<泛型标识符>] [扩展接受类型.]函数名([参数列表]) [: 返回值类型]{ 函数体}共有如下9部分:1. [访问控制符]:可省略。-科特林中的访问控制符有:公共,保...原创 2018-03-09 21:11:39 · 368 阅读 · 0 评论 -
Kotlin学习之声明常量与变量
科特林学习之声明常量与变量@(科特林学习)一,声明格式科特林中声明常量和变量的方式与Java的的差异较大,完整的声明格式是:val |var 变量名[: 变量类型][= 初始化赋值]完整的声明分为四个部分:1. val或var:不可以省略。- val声明常量,只可以赋值一次; var声明变量,可以多次赋值。- 建议尽量使用val,能不使用var就不使用VAR...原创 2018-03-09 21:04:45 · 449 阅读 · 0 评论 -
Kotlin学习之继承
Kotlin学习之继承@(Kotlin学习)Kotlin中的继承模式与Java中存在差异: - Kotlin中所有类的超类是Any,而不是Object; - Kotlin中非抽象类默认不可继承; - Kotlin中非抽象类函数和类属性默认不可覆盖。一、open关键字在Kotlin中所有类都有一个共同的超类Any,对于没有超类型声明的类是默认超类:class Pe...原创 2018-03-16 09:39:49 · 818 阅读 · 0 评论 -
Kotlin学习之Kotlin初识
Kotlin学习之Kotlin初识@(Kotlin学习)一、什么是Kotlin?Kotlin,是JetBrains开发团队开发的基于JVM的静态型别编程语言,也可以被被编译为JavaScript源代码。从上面的这一句话,我们可以总结出: 1. 基于JVM: - JVM就是Java虚拟机(Java Virtual Machine) 。Java虚拟机不只是Java语言的虚...原创 2018-03-09 15:58:12 · 380 阅读 · 0 评论 -
Kotlin学习之数据类
Kotlin学习之数据类@(Kotlin学习)经常要创建一些只保存数据的类。在这些类中,一些标准函数往往是从数据机械推导而来的。在Kotlin中,这叫做数据类并标记为data。一、声明数据类声明一个数据类的语法格式如下:data class <类名> <(主构造函数参数列表)> [: 继承类和实现接口] [{/*类体*/}]主构造...原创 2018-04-06 22:56:14 · 308 阅读 · 0 评论