我在Java类中使用程序的概念遇到问题,它应该相对简单,但我发现很难。

“写一个生成许可证的类LicensePlateFactory
板。提供方法getNextPlate返回唯一
车牌号(一个int)。对全部使用序号
由LicencePlateFactory创建的车牌,从
100001。

编写一个创建LicensePlateFactory的程序,然后
从中获取并显示十二个连续的车牌。”

我的代码(看起来很糟,盯着问题看了好一会后不知道该怎么办):
该工厂:

public class LicensePlateFactory
{
    private int k = 100001;
    private int count;

    public LicensePlateFactory(int x)
    {
          this.count++;
    }

    public static void main(String[] args)
    {
    getnextPlate();
    }

    public int getnextPlate()
    {
    return k + count;

    }
}


创建工厂的程序:

public class LicensePlateFactoryRunner
{

    private LicensePlateFactory fac;
    public LicensePlateFactoryRunner()
    {
        for (int x = 1; x < 13; x++)
        {
        LicensePlateFactory fac = new LicensePlateFactory();
                    System.out.println(LicensePlateFactory.getnextPlate());
        }
    }
}


也许我忘记了一些基本的Java概念?

最佳答案

您的代码将显示12次相同的车牌。原因是因为您要为循环的每次迭代创建一个新的LicensePlateFactory。您应该做的是将工厂的创建移到循环之外。

此外,这是一个小小的错误,但是除非您有充分的理由这样做,否则循环通常以0开始。

关于java - 车牌厂,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13894650/

10-09 18:22