3.kotlin基础:面向对象
2020-04-16 本文已影响0人
LewisZhu
1.接口和抽象类
抽象类abstract class是要被具体的类来继承的来使用的,它是不能被实例化的,抽象类里面的抽象方法abstract fun hello()是一定要被子类实现的;
抽象类是有类的特征,接口只是一些方法的定义;
共同点:不能实例化
用法:类可以实现多个接口,但是之类继承一个类;
2.继承是集成类的构造方法
一个类要被继承必须是open的,一个方法要被其它类使用,也要必须是open的;abstract类和方法是生来被继承的,所以不用open标识;
Screen Shot 2020-04-16 at 1.37.46 PM.png Screen Shot 2020-04-16 at 1.31.40 PM.png
3. object className {} 即就是单例
Screen Shot 2020-04-16 at 1.37.46 PM.png4.伴生对象companion object{}和静态成员
伴生对象即就是静态方法:直接通过类名调用。
Screen Shot 2020-04-16 at 2.26.31 PM.png Screen Shot 2020-04-16 at 2.52.55 PM.png
Screen Shot 2020-04-16 at 2.53.27 PM.png
5.拓展(类.要拓展的方法或者属性)
Screen Shot 2020-04-16 at 3.50.57 PM.png Screen Shot 2020-04-16 at 3.50.14 PM.png6.内部类
1>.非静态内部类是持有外类的状态,可以在非静态内部类里面访问非静态内部类的属性;
2>.静态内部类,就访问不了静态内部类外面的属性喽,因为它没有持有外类的状态;
3>.kotlin中的内部类默认的是静态内部类;使用inner关键字可使其为非静态内部类。
Screen Shot 2020-04-16 at 6.16.50 PM.png