05 2019 档案
摘要:1.含义 在方法和属性中:this代表调用该方法和属性的对象; 在构造器中:this代表该构造器即将返回的对象; 在扩展函数或者带接收者的匿名扩展函数中:this代表“.”左边的接收者; 如果this没有限定符,this优先代表最内层接收者,并依次向外搜索。 2.示例 3.this带限定符
阅读全文
摘要:1.概念 把类定义在其他类里面,定义在其他类内部的类即为嵌套类(或者寄生类),包含嵌套类的类称为外部类(或者宿主类)。 根据定义的方式不一样,又分为 内部类 、 嵌套类 、 局部嵌套类 。 内部类、嵌套类相当于外部类成员之一,可以使用public|internal|protected|p
阅读全文
摘要:1.抽象类 (1)概念 从多个具有相同特征的类中抽象出一个使用abstract修饰的类,以这个抽象类作为其子类模板,从而避免子类设计的随意性。抽象类的设计是一种 模板模式 的设计模式。 (2)特点 抽象类、抽象属性、抽象方法都不需要open修饰符,open修饰符和abstract不能共存。 抽象
阅读全文
摘要:1.概念 kotlin创建的类,如果所有属性值是不可改变的,那这个类就是不可变类。 不可变类属性的值始终维持在初始化状态,因此不可变类 很好维护 。 2.创建规则 提供带参的构造器,用来初始化类中的属性; 定义final val只读属性,避免通过setter方法改变该属性值。 有必要的话还可
阅读全文
摘要:1.final、open修饰符 (1)概念 final用于修饰类、属性和方法,代表类、属性和方法是不可被继承的,kotlin类、属性、方法如果不添加修饰符(final/open修饰符)默认使用final修饰。 open是final的反义词,用于对类、属性和方法开放继承权限。 (2)注意点
阅读全文
摘要:1.概念 kotlin支持在不修改类代码的情况下,动态为类添加属性(扩展属性)和方法(扩展方法)。 2.扩展方法 扩展方法执行静态解析(编译时),成员方法执行动态解析(运行时)。 (1)语法格式 定义一个函数,在被定义的函数前面添加“类名.”,该函数即为该类名对应类的拓展方法。 (2)成
阅读全文
摘要:1.概念 相同类型对象调用同一个 方法或属性 时可能呈现出多种不同子类(子类重写了该 方法或属性 的话)行为或特征。(或者说编译时状态是父类类型,运行时状态可能是其他多种子类类型)。 向上转型:子类实例(或说对象)赋给父类变量(或说引用)时。 向下转型:父类类型实例赋给子类类型变量时。
阅读全文
摘要:1.子类构造器委托调用父类构造器 子类继承父类,子类构造器一定要直接或者间接委托调用调用父类构造器。 (1)子类有声明主构造器时 首先,子类次构造器一定要直接或者间接委托调用子类的主构造器; 其次,子类主构造器一定要委托调用父类构造器,从而子类次构造器能够通过主构造器间接委托调用父类构造器。 (2)
阅读全文
摘要:1.构造器分类 kotlin构造器分为:0~1个主构造器和0~n个次构造器,kotlin至少有一个构造器,没声明构造器,会自动生成一个无参的主构造器。 2.初始化块 初始化块是主构造器的执行体。 3.构造器重载 (1)kotlin声明了主构造器 声明了主构造器,重载的构造器一定要直接/间接委
阅读全文
摘要:| 名称 | 访问权限 | | | | | public(默认) | 该权限符修饰的成员可以在 任何地方 被访问 | | internal | 该权限符修饰的成员可以在该 类的内部 或者 文件的内部 或者 同一个模块内 被访问 | | protected | 该权限符修饰的成员可以在该 类的内部 或
阅读全文

浙公网安备 33010602011771号