Kotlin学习二:类与对象

创建类 MyUtils,里面有一个值和获取的方法:

class MyUtils {
    var a = 0

    fun get(): Int {
        return a
    }
}

在 MainActivity 类中创建工具类获取 a 并且赋值:

        val myUtils = MyUtils()
        Log.w("MyUtils", "" + myUtils.get())
        myUtils.a = 9527
        Log.w("MyUtils", "" + myUtils.get())

打印结果:

MyUtils: 0
MyUtils: 9527

继承

当新建一个项目的时候就发现继承关系用一个冒号表示:

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }
}

MainActivity 继承 AppCompatActivity ,记得父类后面有括号。

自己写父类记得添加 open 关键字,这样才可以被继承:

open class A {
}

B继承A:

class B : A() {
}

构造函数

kotlin 提供了 init 方法,这个就是主构造函数,在里面可以写一些逻辑:

class B(var num: Int) : A() {
    init {
        num = num + 1
        Log.w("num", "" + num)
    }
}

创建B类的时候给个初始值num:

val b = B(30)

将A也添加一个参数:

open class A(pos: Int) {
}

在B可以传个参数给A:

class B(var num: Int) : A(num) {
    init {
        num = num + 1
        Log.w("num", "" + num)
    }
}

你可能感兴趣的:(Kotlin学习,学习)