kotlin语法--->companion object 和 object

  1. kotlin语法:companion object 和 object

    class Test {
        // 写法就是object的写法,只需要添加一个关键字就好
        // 一个类或者接口只能有一个伴随对象,伴随对象的调用直接Test或者Test.one
        // 那么为了简洁直接就是Test(这里会默认调用伴随对象),如果该类中没有伴随对象,则报错
        // 当我们以后遇到直接就是一个和类名,而不是类名()的形式,不用想肯定是该类的伴随对象
        // 比如Compose中的Modifier就是一个伴随对象
        companion object one : HaveFunc {
            override fun myPrint() {
                TODO("Not yet implemented")
            }
        }
        // 没有抽象函数的接口的对象,引用方式Test.three
        object three : NoFunc
    
        object two : HaveFunc {
            override fun myPrint() {
                TODO("Not yet implemented")
            }
        }
    
    }
    
    // 这是有方法的接口
    interface HaveFunc {
        fun myPrint()
    }
    // 没有抽象函数的接口
    interface NoFunc{
    
    }
    
    1. 源码案例

      public interface CoroutineContext {
      	......
      	public interface Key<E : Element> // 只有一个声明
      	......
      }
      
posted @ 2021-08-17 15:54  SowHappy  阅读(513)  评论(0)    收藏  举报