結論から言えば「return文の戻り値にメソッドは使えるか?」という話です。
Java Bronzeを受験しようと思い、翔泳社の本をやっています。(俗に紫本と呼ばれてるらしいです。)
その中でわからない問題があったので質問させていただきます。
java
1class Test { 2 private static int a; 3 private int b; 4 public static int methodA(){ 5 return ++a; 6 } 7 public int methodB(){ 8 return methodA(); 9 } 10 public static void main(String[] args) { 11 Test obj = new Test(); 12 System.out.print(obj.methodB() + " "); 13 System.out.print(obj.methodA()); 14 } 15} 16
これを実行してどうなるか、という問題なのですが、問題自体よりも
mainメソッドのSystem.out.print(obj.methodB() + " ");で
methodBが呼び出されていますが、
直後 return methodA();でメソッドに飛んでいるようです。
ところが本を読んでもネットを調べても
return 戻り値;
であるとの記載のみでメソッドうんぬんの話はありません。
ちゃんと動いているので確実にこちらの認識が間違っているはずですが
どのように間違っているのでしょうか?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。