单例实战
双重检测
class WakeUtils private constructor() {
private val tag = "WakeUtils"
init {
Log.d(tag,"init")
}
companion object {
val instance: WakeUtils by lazy(mode = LazyThreadSafetyMode.SYNCHRONIZED) {
WakeUtils()
}
}
}
静态加载
class WakeLockUtils private constructor() {
private final val tag = "WakeLockUtils"
init {
Log.d(tag,"init")
}
companion object {
val instance = Holder.holder
}
private object Holder {
val holder = WakeLockUtils()
}
}