Kotlin进阶学习

1、异常处理

try {

} catch (e: Exception) {

}

2、递归
阶乘

fun fact(num: BigInteger): BigInteger {
    if (num == BigInteger.ONE) {
        return BigInteger.ONE
    } else {
        return num * fact(num - BigInteger.ONE)
    }
}

尾递归

tailrec

3、类的实例化

class Rect(var height: Int, var width: Int) {
    fun addC() {
    }
}
fun main(args: Array<String>) {
    var rect01 = Rect(20, 10)
    rect01.height
    rect01.width
    rect01.addC()
}

4、继承open

open class Father {
    var chactor : String = "性格内向"
    open fun action (){
        println("公共场合喜欢大声喧哗")
    }
}
class Son : Father(){
    override fun action(){
        println("公共场合有礼貌")
    }
}

5、抽象类

abstract class Human(var name: String) {
    abstract fun eat()
}
class Man(name: String) : Human(name) {
    override fun eat() {
    }
}
var person = Man("xiaoming")
person.eat()

6、接口

interface Woman {
}

7、委托和代理

interface Human {
    fun baby()
}
class Woman : Human{
    override fun baby() {
    }
}
class Man: Human by Woman(){
    override fun baby() {
        Woman().baby()
    }
}

8、单例模式

object Woman : Human{
    override fun baby() {
    }
}

9、枚举

enum class Week {
    星期一, 星期二, 星期三, 星期四, 星期五, 星期六, 星期日
}
fun main(args: Array<String>) {
    Week.星期一.ordinal//第几个元素,从零开始
}

10、sealed class

sealed class Son {
    fun sayHello(){
    }
    //子类类型有限
    class xm() : Son()
    class xg() : Son()
}
fun main(args: Array<String>) {
    var s1 :Son = Son.xg()
    var s2 :Son = Son.xm()
    var list = listOf<Son>(s1,s2)
}

11、闭包

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值