Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java代码不返回任何东西,即使它应该返回_Java_Oop - Fatal编程技术网

Java代码不返回任何东西,即使它应该返回

Java代码不返回任何东西,即使它应该返回,java,oop,Java,Oop,我刚刚接触Java OOP,几乎不了解类和其他东西。我试图写一些代码来理解,但没有成功。这是我的代码,我希望它返回鸡蛋的数量,但我不知道为什么它什么也不返回 class EggCounter { private int egg; { egg = 0; } public void eggAdd() { egg = egg + 1; } public void eggBreak() { e

我刚刚接触Java OOP,几乎不了解类和其他东西。我试图写一些代码来理解,但没有成功。这是我的代码,我希望它返回鸡蛋的数量,但我不知道为什么它什么也不返回

class EggCounter {
    private int egg;
    {
        egg = 0;
    }
    public void eggAdd()
    {
        egg = egg + 1;
    }
    public void eggBreak()
    {
        egg = egg - 1;
    }
    public void eggAddDozen()
    {
        egg = egg + 12;
    }
    public int getEgg()
    {
        return egg;
    }

 }
public class EggTest
{
    public static void main(String[]args)
    {
        EggCounter egg = new EggCounter();
        egg.eggAdd();
        egg.eggAddDozen();
        egg.eggBreak();
        egg.getEgg();
    }
}

它确实返回
12
。替换
egg.getEgg()System.out.println(egg.getEgg())在主方法中的代码>行
并且您会注意到它打印
12
它正在返回,只是您对
getEgg
的返回值不做任何操作。您需要做的是将其存储到变量中或对其进行处理
return
仅将给定值返回给被调用方,您必须存储该值才能使用它。例如:

int eggCount = egg.getEgg();
System.out.println(eggCount);
这里,
eggCount
的赋值调用
egg.getEgg()
。当返回鸡蛋数量时,调用将解析,这将返回值分配给
eggCount
。最后,它将打印出
eggCount
。如果以后需要
egg.getEgg()
的结果,只需输出以下内容即可:

System.out.println(egg.getEgg());

其工作原理是调用方法
egg.getEgg()
。然后解析返回值,并将其传递到print语句中。这就避免了将其存储到一个变量中,以后可以使用。

您对返回值不做任何处理吗?打印egg.getEgg()怎么样,这样您就可以看到它返回什么了?您可以使用二进制运算符。e、 g.替换
egg=egg+12带有
egg+=12