振り返り
継承とは
クラスの性質を受け継いで、別のクラスを作成することを「継承」と呼んでいます。親子の関係が成り立つことから、継承元の親クラス(スーパークラス・基底クラス)、継承先の子クラス(サブクラス・派生クラス)と呼ばれます。
たとえば、車とセダンの関係を見てみましょう。
- 車はセダンの基底クラスである。
- セダンは車を継承する。
- セダンは車の派生クラスである。
車の具象化がセダン(車種のなかの一つ)であるように、セダンを抽象化させたものが基底クラスになるとも言えます。
class 派生クラス extends 基底クラス
{
//派生クラスの実装
}
前回演習問題の解答 例
問題1
問題文
前回、作成したクラスにメソッドを作成してみましょう。
解答例
import lombok.Data;
@Data //Lombokを利用することでSetter/Getterの記載を省略
public class Game {
private String title;
private String device;
private int price;
public Game() { // コンストラクタ
System.out.println("引数なしコンストラクタが呼ばれる");
}
public Game(String title, String device, int price) { //コンストラクタ
this.title = title;
this.device = device;
this.price = price;
}
public void play() {
System.out.println(device + "をONにして" + title + "を遊びます");
}
}
問題2
問題文
基底クラスと継承したクラスを3つ作成してみましょう。
解答例
public class Game{
//基底クラス(ゲーム)
}
public class SmartPhoneGame extends Game
{
//派生クラス(スマホゲーム)
}
public class PlayStationGame extends Game
{
//派生クラス(プレステのゲーム)
}
public class NintendoSwitchGame extends Game
{
//派生クラス(任天堂スイッチのゲーム)
}
今回の演習問題
問題1
問題文
インターフェースを作成してみましょう。
問題2
問題文
インターフェースを実装したクラスを3つ作ってみましょう
コメント