找不到符号符号:方法位置:类

时间:2012-08-06 09:39:04

标签: java

抱歉,只是学习Java;但是,有人能告诉我为什么我会收到“无法找到符号”的错误吗? 我的代码如下:

public class NumberHolder {
  public int anInt;
  public float aFloat;

  public NumberHolder(int setAnInt, float setAFloat) {
    setAnInt = anInt;
    setAFloat = aFloat;
  }

  public static void main(String[] args) {
    NumberHolder newNumber = NumberHolder(12, 24F);
  }
}

4 个答案:

答案 0 :(得分:3)

在调用构造函数之前,您似乎错过了new

NumberHolder newNumber = new NumberHolder(12, 24F);

编辑: 另外,正如Tassos Bassoukos在他的回答中指出的那样,你需要在构造函数中转换赋值:

anInt = setAnInt;
aFloat = setAFloat;

虽然我个人喜欢写这样的构造函数:

public NumberHolder(int anInt, float aFloat) {
  this.anInt = anInt;
  this.aFloat = aFloat;
}

但这是风格和个人偏好的问题。

答案 1 :(得分:2)

public NumberHolder(int anInt, float aFloat);

是构造函数而不是ordenary方法,您需要使用关键字new来获取实际对象。你正在调用它就像一个方法而你没有任何名为NumberHolder的方法(但是如果你有的话它会有效)

答案 2 :(得分:1)

除了您缺少的new关键字之外,构造函数中的赋值应该是相反的。

答案 3 :(得分:0)

您需要使用new关键字实例化新对象。

public class NumberHolder {
    public int anInt;
    public float aFloat;

    public NumberHolder(int anInt, float aFloat) {
        this.anInt = anInt;
        this.aFloat = aFloat;

    }

    public static void main(String[] args) {
        NumberHolder newNumber = new NumberHolder(12, 24F);
    }

}