zoukankan      html  css  js  c++  java
  • Kotlin基础-对象声明和表达式

    /*
    * 有时候只是要对某个类进行轻微改造,供临时使用,避免继承
    * 对象声明和表达式就很有用
    *对面向对象编程的优化,避免一些继承导致的代价过高
    * */
    
    //对中国人来说,这个类,可能各省人适合继承
    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();
        }
    }
  • 相关阅读:
    ant+jmeter 报告优化
    使用no-gui 模式执行分布式测试
    jmeter 4.0使用本机做slave
    jmeter 4.0,分布式测试
    jmeter 跨线程执行变量
    jmeter if 控制器
    jmeter 获取cookie
    jmeter 使用 P函数 自动控制ip和端口等变量
    linux 配置tomcat环境变量
    linux 配置jdk环境变量
  • 原文地址:https://www.cnblogs.com/my334420/p/7070850.html
Copyright © 2011-2022 走看看