本文主要讲解一些Kotlin和Java在基础知识、代码编写方面的一些不同点,主要讲解区别,不对利弊进行分析。(持续更新)
- Kotlin中对于数字没有隐式拓宽转换。比如int自动转为long类型,只能调用数字中的toLong()方法。基本数字类型有Byte、Short、Int、Long、Float、Double,声明Long类型时必须在数字后面写L(大写),小写会提示错误。
val a: Int = 2
val b: Int = 3
val c: Long = (a + b).toLong()
- Kotlin中没有whitch方法,取而代之的为when方法,用法相同
when(x){
is Int -> println("hello $x")
in 1..100 -> println("$x 在1-100区间内")
!in 1..100 -> println("$x 不在1-100区间内")
else -> println("unknown")
}
- Kotlin中 Class 默认为final,不能被继承,需要加open。如果函数没有标注 open,那么子类中不允许定义相同签名的函数,不论加不加 override。标记为 override 的成员本身是开放的,也就是说,它可以在子类中覆盖。如果你想禁止再次覆盖,使用final 关键字。
- Kotlin 能够扩展一个类的新功能而无需继承该类或使用像装饰者这样的任何类型的设计模式。详见:Kotlin扩展
- Kotlin 中提供数据类功能,将在以后的文章中讲解
网友评论