关于如何在Android / Java中实现全局变量,有很多问题和答案。
因此,似乎可以实现单例或使用静态变量的数据类本身。
我即将开始一个更大的项目,并希望从右脚开始。
我只是不确定使用哪一个。
Pro singleton / con数据类
Con singleton / pro数据类
总而言之,我倾向于使用DataClass,但我不确定,因为我读到这应该是不合适的编程风格。
我想添加
非常感谢
答案 0 :(得分:3)
实现单例的最佳方法是使用枚举。
public enum Singleton
{
INSTANCE;
public void someMethod()
{
// your code here
}
}
有关详细信息,请参阅Effective Java (2nd Edition)
答案 1 :(得分:1)
首先:具有公共静态成员变量的类与单例类之间没有太大区别。许多开发人员更喜欢单例模式,因为代码看起来更自然,更多Java。例如。 Singleton.Data
看起来像是一个持续访问,而Singleton.getData()
看起来就像是在访问某种静态数据。
我个人使用静态应用程序模式:请参阅Accessing resources without an Activity or Context reference
您可以使用onCreate
设置任何类型的静态数据甚至其他单例。例如。我更喜欢像这样设置一个单独的SQLite数据库,然后通过App.getDb()
访问它。您可以使用此模式访问应用程序上下文或资源。
在使用静态数据时,您应该考虑内存韭菜。我建议先看一下this article。