016-002-008

抽象クラスでテンプレートメソッドを実装

上級

問題説明

抽象クラスでテンプレートメソッドを実装

この問題では: 抽象クラス Report にテンプレートメソッド generate() と抽象メソッドを定義し、サブクラス SalesReport で具体的な処理を実装して結果を標準出力に表示するプログラムを作成します。

学習目標: 抽象クラスの具象メソッドが抽象メソッドを呼び出す「テンプレートメソッドパターン」を理解する

概要

Report 抽象クラスに、処理の流れを定義する具象メソッド generate() と、各ステップを定義する抽象メソッドを作成します。SalesReport クラスが具体的な処理を実装してください。

仕様

  1. Report 抽象クラスに以下を定義:
    • abstract String getTitle() : レポートタイトルを返す
    • abstract String getContent() : レポート本文を返す
    • 具象メソッド generate() : タイトルと本文を組み合わせて出力
  2. generate() は以下の形式で出力:
    • === <title> === (1行目)
    • <content> (2行目)
    • === End === (3行目)
  3. SalesReportgetTitle()Sales Report を、getContent()Total: 1500 を返す

出力形式

=== Sales Report ===
Total: 1500
=== End ===

コードを実行してみませんか?

この問題のコードエディタと実行機能を使用するには、ログインしてください。

アカウントをお持ちでない方

新規登録