XMLPro 21回目
http://goo.gl/mggNHC
ICPCお疲れ様です!!
皆さん何問解けました?
18回と20回の復習
3
メソッド
• プログラムでは同じような処理を何度も記述
しなければならないことがあります
• そんな処理を一つの機能としてまとめて、必
要に応じて利用できるようにしておくと便利で
す。
↓
• その纏めた処理の塊をメソッドといいます
4
メソッドの定義方法図解
いつも書くも
の
戻り値の
型
関数
名前
引数
の型
引数の
名前
戻り値
の値
クラスとは
• プログラムの一番外側に記述されていたもの
• クラスはメソッドと変数の固まり
• メソッドと変数のことをクラスのメンバと言う
6
問題
• 以下に示すクラスを作ってください。
–クラス名:「Student」(学生)
–持っている関数
• 「こんにちは!」と表示するメソッド「hello」
–持っている変数
• String型の、name(名前)
• int型の、grade(学年。)
7
class Student
8
• Studentクラスは後で使うので書いておいてく
ださい
9
本日の内容
クラス
継承 extends
コンストラクタ
10
クラス
• 先ほど作成したStudentクラスのオブジェクト
s1を作成してgrade=1 name=“自分の名前”
• を設定する
11
コンストラクタ
コンストラクタ
• コンストラクタとは「オブジェクトを作ったとき
必ず実行される部分を定義した部分」です
• ようは初期設定や最初にしたい処理を書けば
いいのです
13
コンストラクタをつくろう
修飾子 クラス名 (引数の型 引数名) {
処理の内容
}
で作成できます
引数なしでも可
14
書いてみる
• 青枠の中がコンストラクタです
15
• 普通のメソッドと違いオブジェクトが作られる
時だけ呼ばれる
• 普通のメソッドと同じように引数の数によって
使い分けができます
16
Student クラスに書き足す
17
• main文のあるEx1.javaで
18
継承
• 共通している部分はそのままで異なる部分だ
け追加すると手間がかからない。
• このような場合に、親となるクラスをスーパー
クラスと言います。
• 継承すると「継承元のクラス」のメソッドや
フィールドが「継承したクラス」で使えるように
なります
• 継承する側のクラスはサブクラスと呼ぶ
20
継承するには
class クラス名 extends スーパークラス名{
処理
}
21
22
23
super について
• コンストラクタを呼び出すときにsuper.をつけ
るとスーパークラスのコンストラクタを呼び出
してからサブクラスのコンストラクタを呼び出
す
24
25
showメソッドをついか
26
27
この場合Carクラス→Busクラスの順に呼ばれた
28
問題
taxi クラスを作る
タクシーに必要だと思う機能の変数を付け加え
て実行する
メソッドは自由に作る
29

基礎構文班21回目 (コンストラクタ, 継承)