Javaの問題です。下記の2つのクラスを元に継承して作成する問題なんですが、Demonクラスにある(Human h)という記述の意味がわかりません。継承先のクラスでメソッドを呼び出すとき、何を引数として渡せばいいのでしょうか。分かりやすく説明していただけると幸いです。public class Demon {private String name = \u0026quot;鬼\u0026quot;;private char suffix;public Demon(String name, char suffix){ this.name = name; this.suffix = suffix; }//攻撃public void attack(Human h) { System.out.println(this.name + this.suffix + \u0026quot;の攻撃。\u0026quot;); System.out.println(\u0026quot;HPダメージ5\u0026quot;); h.setHp(h.getHp() - 5); }}public class Human {private String name = \u0026quot;ふつうの人間\u0026quot;;private int hp = 100;public String getName() { return this.name; }public int getHp() { return this.hp; }public void setHp(int hp) { this.hp = hp; }}

Java

1件の回答

回答を書く

1209780

2026-02-09 22:55

+ フォロー

継承とは関係なく、デーモンが攻撃する相手は人間なので、その人間のデータを引数で渡しているだけです。

攻撃しろ!では、相手が分からないので、
攻撃しろ!(誰々に) と引数で指定しているのです。

publicなメソッドなので、Demonを継承したクラスであれば、同じメソッドが同じ様に使えます。引数も同じです。
(引数を変えて再定義した場合オーバーロードになって独立した別のメソッドになります。)

うったえる有益だ(0シェアするブックマークする

関連質問

Copyright © 2026 AQ188.com All Rights Reserved.

博識 著作権所有