Bean和EBean概念Android注释
对不起,我一般是Android注释和依赖注入的新手。 我正在尝试了解事情的工作方式以及使用Android注释带来的好处。
我已经学习了示例示例,关于@EActivity, @ViewById, @App
和Android开发中广泛使用的其他注释都很明确。
我对理解Ebean
有困难。 我已经使用Spring for Java,很明显,我们在xml文件中声明了bean,并且只是在代码中使用它们,这样我们就可以轻松地在xml文件中更改,只提供具体的实现,并且它将在我们已经使用的任何地方更改来自AppContext
的Id。
但是我不明白在Android Annotations的情况下使用bean的目的,可能我一般不了解DI。
@EBean
public class MyClass {
// ...
}
@EActivity
public class MyActivity extends Activity {
@Bean
MyClass myClass;
}
我们在这里有什么好处? 我们是只省略一行myClass = new MyClass();
?
就这样 ?
另一个例子是Singletone范围。
@EBean(scope = Scope.Singleton)
public class MyClass {
// ...
}
在这种情况下,我们有一些好处,我们不必手动创建实例,私有构造函数并检查它是否为空(惰性初始化).....
对于这种情况,我明白它可以节省时间,但在第一个例子中,它似乎对我没有任何好处,我们没有可以在仅用于注释的bean之间构建bean依赖项的xml文件。
请帮我理解这一点。
谢谢大家提前。