以下代码中的第4行是什么意思?它应该是一个StatusTracker类型的空参数对象被创建?
如果这个问题过于简单,我道歉。我是android新手,只有非常基本的java知识。到目前为止,我从未见过在类体中定义的对象......
public class StatusTracker {
private Map<String, String> mStatusMap;
private List<String> mMethodList;
private static StatusTracker ourInstance = new StatusTracker();
private static final String STATUS_SUFFIX = "ed";
public static StatusTracker getInstance() {
return ourInstance;
}
private StatusTracker() {
mStatusMap = new LinkedHashMap<String, String>();
mMethodList = new ArrayList<String>();
}
/* other class functions ... */
}
答案 0 :(得分:1)
这是一个单例对象,这意味着只创建了一个实例,您可以使用StatusTracker.getInstance()
方法访问它。
答案 1 :(得分:1)
我想在你刚开始的时候详细说清楚事情,
StatusTracker myInstance = new StatusTracker();
我们可以在您看到的同一个类中定义类的对象。这是我们在许多数据结构中使用的非常重要的属性。
含义:这意味着我们可以用另一个对象保存一个对象的内存地址,这样两个对象的类型都是相同的。
静态StatusTracker myInstance = new StatusTracker();
定义一个memeber静态意味着,该成员与该类相关联,而不与该类的任何对象相关联。它可以通过类名修改。
单身人士课程
public static StatusTracker getInstance() {
return ourInstance;
}
此代码帮助我们在整个程序中只保留此类的一个对象。如果我们想要在此对象中保存整个程序的集中数据,这可能很有用。
我们可以使用
从任何地方访问我们的中心数据StatusTracker.getInstance()