- ベストアンサー
コンストラクタに引数がある場合のコンポジションの使い方
- コンストラクタに引数を持つコンポジションの使い方について解説します。
- コンストラクタを使用してPersonクラスとStudentクラスを関連付け、メイン関数でその情報を表示する方法を説明します。
- 初心者に向けて、コンポジションの基本的な使い方と解決方法をまとめています。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
とりえず、実行できるようにはしました。 class Person{ public String name_; public int age_; public Person(String n,int a){ name_ = n; age_ = a; } } class Student{ public Person person_; public int grade_; public Student(Person p,int g){ person_ = p; grade_ = g; } } public class goo_test14 { public static void main(String[] args){ Student asaya_ = new Student(new Person("MOTO",2),0); System.out.println(asaya_.person_.name_+" "+asaya_.person_.age_+" "+asaya_.grade_); } } **********引用******** >Student asaya_ = new Student(p,0); >} ********************** エラーは}が、System.outの後に来るのじゃないですか??
その他の回答 (1)
- OKbokuzyo
- ベストアンサー率43% (130/296)
> Student asaya_ = new Student(p,0); この「p」が解決できずにコンパイルエラーとなっているのだと思います。 Student asaya_ = new Student(new Person("", 0), 0); とすれば良いかと思いますが、、、 > public Student(Person p,int g){ ここの「p」も使用されてませんね。。。
お礼
前回のご回答同様ありがとうございました。私もtom11さんの前回の回答をヒントにして、解決しました。内容的には同じ内容でした。確かに}のミスも有りましたが、そのミスを直しても解決しなかったと思います。 ご回答ありがとうございました。