• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:実行の順番を教えてください。)

実行の順番を教えてください。

このQ&Aのポイント
  • 現在JAVAの学習をおこなっていて、参考書で勉強しています。実行の順番を教えて頂けないでしょうか。
  • サンプル1では、testAllクラスのmainメソッドが最初に実行され、その中でtestAクラスのインスタンスが作成されます。サンプル2では、mainメソッドが最初に実行され、appleメソッドが呼び出されます。最後にサンプル3では、mainメソッドが実行され、orangeクラスのi変数の値が出力されます。
  • 実行順番: サンプル1 -> サンプル2 -> サンプル3

質問者が選んだベストアンサー

  • ベストアンサー
  • nicepeace
  • ベストアンサー率58% (7/12)
回答No.2

public class A{ public static void apple(Integer i){//4 int ta =i.intValue();//5 ta+=3 ;//6 i=new Integer(ta);//7 } public static void main(String args[]){//1 Integer i = new Integer (0);//2 apple(i);//3 System.out.println(i.intValue());//8 } } 1:メインメソッドを実行 2:Integerをインスタンス化0をラップ 3:appleにInteger型のiを渡す 4:appleを実行 5:intValueメソッドでint型を取り出す 6:ta+=3;を実行 7:Integer型にまたラップ 8:intValue()でint型を取り出す 因みに表示されるのは0です。 appleメソッドで3になっていますが、戻り値等がないのでmainメソッド内の変数iは何も変わっていません。

その他の回答 (2)

  • nicepeace
  • ベストアンサー率58% (7/12)
回答No.3

public class Test{ public static void main (String args[]){ class orange{ public int i =9; } Object o=(Object)new orange(); orange orange = (orange)o; System.out.println("i="+orange.i); } } 1:メインメソッド実行 2:Object型でorangeをインスタンス化 3:orange型にキャストし直して変数orangeに代入 4:内部クラスorangeの変数iを表示

  • nicepeace
  • ベストアンサー率58% (7/12)
回答No.1

class testA{ testB b; testA(){//5 b=new testB(this);//6 } } class testB{ testA a; testB(testA a){//7 this.a=a;//8 } } class testAll{ public static void main(String args[]){//1 new testAll().banana();//2 } void banana(){//3 testA test = new testA();//4 } } 1:testAllをインスタンス化そのままbanana()を呼ぶ 2:banana()の中でtestAをインスタンス化 3:testAのコンストラクタでtestBをインスタンス化 4:testBのコンストラクタの引数にthisでtestAのインスタンス自身を渡す。