コード判定結果
動画プレイヤーの機能を制限して表示しています
一部機能が正常に読み込まれませんでした。
コンテンツブロックなどが動作していないかご確認ください。
コンテンツブロックなどが動作していないかご確認ください。
このチャプターでの演習課題が終了していません
次のチャプターへ進みますか
ジャッジに時間がかかっています
しばらくしてから再度アクセスしてください。
演習課題を利用するにはpaiza会員登録のうえ、
有料会員登録が必要です
有料会員登録が必要です
新・Java入門編24: オブジェクト指向について学習しよう(継承・ポリモーフィズム)
#06:オーバーライド
この動画を見るにはpaiza会員登録のうえ
有料会員登録が必要です
実技課題 「サブクラスからスーパークラスのインスタンスメソッドを上書きしてみよう」
右側のコードエリアには、 スーパークラスとして Job クラスが用意されています。
このコードの Job クラスにある、インスタンスメソッドの battle メソッドを、サブクラスから上書きするコードを追加してください。
期待する出力値
勇敢にもスライムと戦っている
このチャプターでは、オーバーライドについて学習します。
アノテーションを利用すると、メソッドなどに対して注釈をつけることができます。
アノテーションは @ から始まります。
アノテーションには様々な種類が用意されており、また自作することも可能です。
@Override アノテーションが付与されたメソッドは、コンパイル時に正しくオーバーライドされているかチェックすることができます。
たとえば @Override が付与されているにも関わらず、引数が異なるなどの理由でオーバーロードと解釈されてしまう場合にはコンパイルエラーが発生し、事前に検出が可能です。@Override アノテーションは付与しなくても構いませんが、事前に誤りを検出することができるため、オーバーライド時には使用するのが良いでしょう。class Lion extends Animal {
public String habitat;
@Override
public void eat(String food) {
System.out.println("勢いよく" + food + "を食べました");
}
}