だから、Javaの私の理解から、あなたが書くとき
return value;
実際には、「value」のタイプに応じて、「value」の値、または「value」への参照のいずれかが返される場合があります。私の知る限り、「value」がプリミティブデータ型の場合、Javaは「value」の値を返します。「value」がクラスのような抽象データ型の場合、Javaは「value」への参照を返します。
さて、私が興味を持っているのは、列挙を伴うリターンの振る舞いです。'variable'がenum型の場合、値または参照が返されますか?