美文网首页kotlin
kotlin学习笔记(二)

kotlin学习笔记(二)

作者: 图纸本上画圈圈 | 来源:发表于2021-05-06 21:59 被阅读0次

    6.面向对象编程

    面向对象的语言是可以创建类的。类就是对事物的一种封装,字段表示该类所拥有的属性,函数则表示该类可以有哪些行为。

    7.File通常是用于编写kotlin顶层函数和扩展函数的。kotlin中也是使用class关键字来声明一个类。

    8.kotlin中实例化一个类的方式和Java是基本类似的,只是去掉了new关键字。

    例:fun main(){

        val p=Person()

        p.name="Jack"

        p.age=19

        p.eat()
    }

    9.在kotlin中任何一个非抽象类默认都是不可以被继承的,相当于Java中给类声明了final关键字。类的前面加上open关键字,这个类是专门为继承而设计的。在Java中继承的关键字是extends,而在kotlin中变成了一个冒号。

    例:class Student:Person(){

        var sno=""

        var grade=0

    }

    10.kotlin将构造函数分为两种:主构造函数和次构造函数。主构造函数的特点是没有函数体,直接定义在类名的后面即可。

    例:class Student (val sno:String,val grade :Int):Person(){}

    11.kotlin给我们提供了一个init结构体,所有主构造函数中的逻辑都可以写在里面。

    例:class Student(val sno :String,val grade:Int):Person(){

        init{

          println("sno is"+sno)

          println("grade is"+grade)

        }

    }

    12.子类中的构造函数必须调用父类中的构造函数。kotlin中,子类的主构造函数调用父类中哪个构造函数,在继承的时候通过括号来指定。即使在无参数的情况下,这对括号也不能省略。

    例:class Student (val sno:String,val grade:Int,name:String,age:Int):Person(name,age){}

    注意:我们在Student类的主构造函数中增加name和age,不能再将它们声明成val,因为在主构造函数中声明成val或者var的参数将自动成为该类的字段,这就会导致和父类中同名的name和age字段造成冲突。因此这里的name和age参数前面我们不用加任何关键字,让它的作用域仅限定在主构造函数当中即可。

    13.

    相关文章

      网友评论

        本文标题:kotlin学习笔记(二)

        本文链接:https://www.haomeiwen.com/subject/vvbrdltx.html