0

我需要使用帮助类中的一些方法,但是当我尝试在我的活动中创建帮助类的对象时遇到问题。

HelperClass helper = new HelperClass();

当我执行上述操作时,我收到一条错误消息,提示我需要将 Helper() 默认设置为可见性。这是助手类的相关部分。

public class HelperClass {

private static HelperClass helperClass;
private String list;

private HelperClass() {
    initialiseHelper();
}

当我在 HelperClass 中取出 private 时很好,但我不想编辑这个类。有没有解决的办法?

4

3 回答 3

2

看起来您正在尝试应用单例模式,但您缺少该getInstance()方法,该方法应如下所示:

public static synchronized HelperClass getInstance() {
    if (helperClass == null) {
        helperClass = new HelperClass();
    }
    return helperClass;
}

现在你应该在任何你想引用HelperClass. 希望这可以帮助。

于 2012-12-02T18:06:59.280 回答
0

如果您想要私有构造函数,您可以从 HelperClass 制作单例。

于 2012-12-02T18:05:16.463 回答
0

您的Helper类没有public您标记的构造函数private

或者

public HelperClass{

   private HelperClass(){
   // do some stuff
   }

   public static HelperClass newInstance(){
       new HelperClass();
   }
}

或者使用单例模式

于 2012-12-02T18:05:33.957 回答