Kotlin(类,class)
初始化类
- 以上就是一个kotlin类的初始化,他的主构造函数直接写在
1
2
3
4
5
6class User (_nickname:String){
val nickname:String
init{
nickname = _nickname
}
}User
类后面,还省略了关键字constructor
。但是由于语法结构的问题,他没有函数体,所有就通过init
与主构造方法一起使用。
在类中的元素必须初始化,可以如上图所示,也可以直接赋值。val nickname:String = _nickname
- kotlin还可以化简操作,直接把属性声明在主构造函数中如上,这个是最简形式
1
class User(val nickName;String)
构造方法
kotlin中也可以有很多的从构造方法。而且他们用的不是继承,而是另一个关键词,委托,通过委托,委托其他的构造方法来帮助自己实现构造,他的写法与继承一样,用:
来链接。
他可以像java一样写很多的从构造方法,然后可以相互委托,但最后必须也委托给初始化基类,或者另一个这样做了的从构造方法。初始化基类的构造方法:主构造方法(包括父类的主构造方法)。
接口中的属性
在kotlin中,接口可以实现具体的方法,但是他不能有初始化的属性,也就是不能有字段,他的属性只能声明,不能赋值。
1 | interface A{ |
实现这个接口的类一定要用override
重写这个方法,
可以赋值
也可以定义get方法。
或者定义初始化方法
如果接口中定义了属性的get方法,那么这个属性也可以直接继承,而不用重写
get方法和set方法,还有构造器方法都可以私有化,也就是可以实现一些单例或者静态方法之类的,保证封闭性。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 小贺同学的blog!
评论