当您有很多类时,通常需要从另一个类访问一个类的字段/方法。我不是很有经验的Java和我最近发现这个方法,这似乎是非常方便的(不是从一个类传递变量到另一个更好):创建类静态获取器而不是对象链接
class MyClass {
private static MyClass _instance = null;
public MyClass(){
...
}
public static getInstance(){
if (_instance == null) {
_instance = new MyClass();
}
return _instance;
}
}
现在在其他任何类,我可以简单地做
MyClass.getInstance().callSomething()
但是,我没有看到在Internet上找到的Java示例和教程中的其他类的访问方式。这让我想到了,这种方法可能存在一些潜在的问题吗?特别是当你有很多类,因此在每个类中有很多这样的静态调用?
这被称为'Singleton',并且非常用于Java或任何其他面向对象的语言。当你只想要一个类 – 2014-09-21 09:52:29
的单个实例时,你使用它** public static getInstance(){} **甚至有效吗? – Nabin 2014-09-21 09:55:31
这不是一个单例:构造函数是公共的。 @Nabin是对的,它不是一个有效的方法签名。 – 2014-09-21 13:39:19