Kotlin companion object与object

Java中修饰静态方法,使用关键字static,例如:

public static String getName() {
    return BuildConfig.VERSION_NAME;
}
Kotlin语言中使用"object"修饰静态类,被修饰的类,可以使用类名.方法名的形式调用,如下:

object Util {
 
    fun getName(): String {
        return BuildConfig.VERSION_NAME
    }

使用伴生对象

伴生对象中的方法可以和外部类中的方法同名,但是他们分属于不同的对象或者类,不属于重载。与Java中不太一样。本身伴生对象和静态方法不同。

companion object {
    val FramntUtils by lazy { FramntUtils() }
}

使用场景

  • 如果一个类是工具类,里面全是静态方法,此时我们可以使用对象声明;
  • 如果一个类里面有部分静态成员(包括静态变量和方法),此时就可以使用companior object

你可能感兴趣的:(Android)