找不到访问器/突变器方法的变量



我正试图为家庭作业制作一个程序,在第一堂课上,我正在制作变量并为此添加访问器/mutator方法,但由于某种原因,它无法在第11行找到我的CashBallPick变量。我检查了很多次,看起来所有地方的拼写都是一样的,只是在正确的地方用了大写字母。

import java.util.Scanner;
public class CashBall
{
    Scanner keyboard = new Scanner(System.in);
    int[] lotteryNumbers = new int[4];
    int yourNumbers;
    int CashBallPick;
    public CashBall(int yourNumbers, int CashBallPick)
    {
        this.yourNumbers=yourNumbers;
        this.yourCashBallPick=CashBallPick;
    }
    public int getYourNumbers()
    {
        return yourNumbers;
    }
    public int getCashBallPick()
    {
        return CashBallPick;
    }
    public void setYourNumbers(int yourNumbers)
    {
        this.yourNumbers=yourNumbers;
    }
    public void setCashBallPick(int CashBallPick)
    {
        this.yourCashBallPick=CashBallPick;
    }
}

我还创建了另一个类,它是驱动程序类。我知道对于写在不同类中的普通变量,比如一个名为examplvariable的变量如果我有它的构造函数并且想要在不同类中使用该变量我可以输入examplvariable E1 = new examplvariable (info在这里)但对于数组,我该怎么做呢?

如果这是整个类,尝试将第11行更改为:

this.CashBallPick=CashBallPick

应该可以了。它以前不起作用的原因是因为你的类没有一个名为"yourCashBallPick"的变量。

编辑:第27行需要相同的修复

看起来你可能希望你的构造函数是这样的:

public CashBall(int yourNumbers, int yourCashBallPick)
{
    this.yourNumbers=yourNumbers;
    this.yourCashBallPick=yourCashBallPick;
}

您在两个地方缺少yourCashBallPickyour前缀

您似乎在代码中混合了CashBallPickthis.yourCashBallPick。你没有在任何地方声明yourCashBallPick,所以可能:

int CashBallPick;
应该

int yourCashBallPick;

——丹

在某些地方拼写为yourCashBallPick(例如setCashBallPick()和构造函数),在其他一些地方拼写为CashBallPick(例如getCashBallPick())。在所有方法中保持一致。

关于数组,假设你想要一个包含14个ExampleVariable s的数组:

ExampleVariable example[] = new ExampleVariable[14];
for (int i=0; i< example.length; i++)
     example[i] = new ExampleVariable(somevalue);

这行对吗?

 this.yourCashBallPick=CashBallPick; 

你的全局变量真的是这样声明的吗?

最新更新