- 50 名前:デフォルトの名無しさん mailto:sage [2009/07/27(月) 15:26:04 ]
- >>47
BadGradeException を Student.java にってのは転載ミスだろ。 1. 16行目: george.printGrade(); george は Person クラスと宣言されているため、Person で宣言されているメソッドしか利用できない。 19行目: Student leader = martin; leader は Student クラス、martin は Person クラスのオブジェクトであり、 Student は Person だが Person は Student ではないため。 2. "Name: Jhon" <- 5行目 Person.print() が呼ばれ、名前を表示 "Age: 32" <- 6行目 Person.printAge() が呼ばれ、年齢を表示 "Name: Paul" <- 10行目 Student.print() から super.print() により Person.print() が呼ばれ、名前を表示 "Job: student" <- 10行目 Student.print() の super.print() の後、固定文字列を表示 "grade: 3" <- 11行目 Student.printGrade() が呼ばれ、学年を表示 "Age: 20" <- 12行目 Student.printAge() は無いが親クラスの Person.printAge() が呼ばれ、年齢を表示 "Name: George" <- 15行目 george は Person だが実体は Student のため、Student.print() が呼ばれ、名前を表示 "Job: student" <- 15行目 Student.print() の super.print() の後、固定文字列を表示 "5 is out of range." <- Student のコンストラクタ(10行目)で BadGradeException が発生し、25行目でキャッチされ、26行目で表示 ※例外によりcatchに飛んだので、22行目の ringo.print()は実行されない。
|

|