問題
あなたは、ゲームに登場するプレイヤーのスコアを管理するクラス Player を設計しようとしています。
このクラスには次の2つの目的があります:
- 各プレイヤーが持つ個別のスコアを保持する
- 全体での最高スコア(high score)を記録し、共有する
プレイヤーがスコアを更新するたびに、新しいスコアがそれまでの最高スコアを超えていれば、クラス全体の最高スコアも更新されるようにしてください。
以下のような出力になるように実装してください:
Alice のスコア: 50(現在の最高スコア: 50)
Bob のスコア: 80(現在の最高スコア: 80)
Alice のスコア: 100(現在の最高スコア: 100)要件
Playerクラスを作成すること- インスタンス変数:
name,scoreを定義すること - static変数:
highScoreを定義し、すべてのプレイヤー間で共有すること setScore(int newScore)メソッドで、スコア更新とhighScoreの自動更新を行うことdisplay()メソッドで、名前 + スコア + 現在の最高スコアを出力すること- 出力には
System.out.printlnを使用すること
テストコード(Main.java)
public class Main {
public static void main(String[] args) {
Player p1 = new Player("Alice");
Player p2 = new Player("Bob");
p1.setScore(50);
p1.display();
p2.setScore(80);
p2.display();
p1.setScore(100);
p1.display();
}
}ヒント
highScoreはすべてのプレイヤーで共有される static 変数setScore()の中で、if (newScore > highScore)で比較・更新display()はname,score,highScoreを1行で表示する


