类
创建类 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)
}
}
|