当 Android 上的 Java 8 可用时,为什么 DefaultLifecycleObserver 优于 Lifecycle 注释?

hop*_*pia 5 java android android-lifecycle java-8 android-support-library

根据Lifecycle 上Android 开发人员文档

如果您使用 Java 7 语言,则使用注释观察生命周期事件。一旦 Java 8 Language 在 Android 上成为主流,注解将被弃用,因此在DefaultLifecycleObserver注解之间,您必须始终首选DefaultLifecycleObserver.

class TestObserver implements DefaultLifecycleObserver {
     @Override
     public void onCreate(LifecycleOwner owner) {
         // your code
     }
 }
Run Code Online (Sandbox Code Playgroud)

哪些特定的 Java 8 语言/jvm 功能正在推动 Lifecycle 注释的弃用?例如,使用DefaultLifecycleObserver?时我们是否获得了更好的性能(构建或运行时)?

Pau*_*ime 3

我认为这是因为DefaultLifecycleObserver使用接口默认方法,这是 Java 8 的一个特性。