首页 > 其他 > 详细

Kotlin基础-对象声明和表达式

时间:2017-06-23 17:13:37      阅读:225      评论:0      收藏:0      [点我收藏+]
/*
* 有时候只是要对某个类进行轻微改造,供临时使用,避免继承
* 对象声明和表达式就很有用
*对面向对象编程的优化,避免一些继承导致的代价过高
* */

//对中国人来说,这个类,可能各省人适合继承
open class China(var name:String){
    open val skin="yellow"

}

fun main(args: Array<String>) {
//但如果外国人入籍,就不适合用继承
    //对象表达式:val 对象名=object:类,接口{属性或方法的override定义}
    val baako= object : China("Baako Zaid") {
        override val skin="black"
    }
    println(baako.skin)

    //纯对象表达式:临时使用,无需继承任何类
    val tempParking=object {
        var x=100
        var y=200
    }
    println(tempParking.x)
    //相当于调用函数
    NetworkRequestManager.register()
//伴生对象的方法,与类关联性强
    IdCard.creat()

}

//对象声明,不能在函数中
//一般用于对其他类的一种使用上的包装
object NetworkRequestManager{
    fun register(){
        print("连接网络中")
    }
}
//伴生对象:一般用于创建一个类的实例的“工厂”方法
//java中的静态属性
class IdCard{
    companion object{
        fun creat() =IdCard();
    }
}

 

Kotlin基础-对象声明和表达式

原文:http://www.cnblogs.com/my334420/p/7070850.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!