挑戦問題を格納しました
This commit is contained in:
4
CUI_オブジェクト指向復習問題/Question2-3/README.md
Normal file
4
CUI_オブジェクト指向復習問題/Question2-3/README.md
Normal file
@@ -0,0 +1,4 @@
|
||||
# オブジェクト指向総合復習問題 Question2-3
|
||||
|
||||
TODOコメントを埋めて、受講生関連クラスを作ろう!
|
||||
カリキュラム関連クラス、コース関連クラスは以前の問題からコピーして移行しましょう。
|
||||
@@ -0,0 +1,63 @@
|
||||
package com.rhizome.beans.student;
|
||||
|
||||
import com.rhizome.beans.course.Course;
|
||||
|
||||
/**
|
||||
* Javaの受講生クラス
|
||||
* Java受講生として、コース情報や研修で行う動作を保持するクラス
|
||||
* TODO Studentクラスを継承する
|
||||
*
|
||||
* @author ITCollege
|
||||
* @since 2022
|
||||
* ------------------------------------------------------------
|
||||
* Copyright(c) Rhizome Inc. All Rights Reserved.
|
||||
*/
|
||||
public class JavaStudent{
|
||||
|
||||
// 受講するコース(受講コースは共通のためstatic)
|
||||
private static Course courses;
|
||||
|
||||
// デフォルト自己紹介
|
||||
private final static String INTRO_DEFAULT_MESSAGE = "初心者なので頑張ります!";
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* JavaStudentクラスのコンストラクタ
|
||||
* nameフィールドとageフィールドを初期化
|
||||
*
|
||||
* @param name 名前
|
||||
* @param age 年齢
|
||||
*/
|
||||
|
||||
/**
|
||||
* JavaStudentクラスのコンストラクタ
|
||||
* nameフィールド、ageフィールド、introMessageフィールドを初期化
|
||||
*
|
||||
* @param name 名前
|
||||
* @param age 年齢
|
||||
* @param introMessage 自己紹介メッセージ
|
||||
*/
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* introduceメソッドのオーバーライド
|
||||
*/
|
||||
@Override
|
||||
public void introduce() {
|
||||
System.out.println("初めまして。" + this.name + "と申します。");
|
||||
|
||||
/*
|
||||
* TODO
|
||||
* もしメッセージが代入されていれば代入されたメッセージを表示する
|
||||
* メッセージが代入されていなければデフォルトの自己紹介メッセージを表示する
|
||||
*/
|
||||
}
|
||||
|
||||
public static Course getCourses() {
|
||||
return courses;
|
||||
}
|
||||
|
||||
public static void setCourses(Course courses) {
|
||||
JavaStudent.courses = courses;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
package com.rhizome.beans.student;
|
||||
|
||||
/**
|
||||
* 学習インタフェース
|
||||
* 学習する際に必要となる機能
|
||||
*
|
||||
* @author ITCollege
|
||||
* @since 2022
|
||||
* ------------------------------------------------------------
|
||||
* Copyright(c) Rhizome Inc. All Rights Reserved.
|
||||
*/
|
||||
|
||||
public interface Learn {
|
||||
/**
|
||||
* TODO
|
||||
* question()メソッド
|
||||
* 質問メソッド
|
||||
*
|
||||
* @param unit 単元名
|
||||
*/
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* learn()メソッド
|
||||
* 学習メソッド
|
||||
*
|
||||
* @param unit 単元名
|
||||
*/
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* review()メソッド
|
||||
* 復習メソッド
|
||||
*
|
||||
* @param unit 単元名
|
||||
*/
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* prepare()メソッド
|
||||
* 予習メソッド
|
||||
*
|
||||
* @param unit 単元名
|
||||
*/
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
package com.rhizome.beans.student;
|
||||
|
||||
/**
|
||||
* 受講生クラス
|
||||
* 各コースの受講生の元となる抽象クラス
|
||||
* TODO Learnインターフェースを実装する
|
||||
*
|
||||
* @author ITCollege
|
||||
* @since 2022
|
||||
* ------------------------------------------------------------
|
||||
* Copyright(c) Rhizome Inc. All Rights Reserved.
|
||||
*/
|
||||
public abstract class Student {
|
||||
// 名前
|
||||
protected String name;
|
||||
|
||||
// 年齢
|
||||
protected int age;
|
||||
|
||||
// 自己紹介メッセージ
|
||||
protected String introMessage;
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* Studentクラスのコンストラクタ
|
||||
* nameとageフィールド初期化用
|
||||
*
|
||||
* @param name 名前
|
||||
* @param age 年齢
|
||||
*/
|
||||
|
||||
/**
|
||||
* Studentクラスのコンストラクタ
|
||||
* nameフィールド、ageフィールド、introMessageフィールドを初期化
|
||||
*
|
||||
* @param name 名前
|
||||
* @param age 年齢
|
||||
* @param introMessage 自己紹介メッセージ
|
||||
*/
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* introduce()メソッド 抽象メソッド
|
||||
* 自己紹介メソッド
|
||||
*/
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* questionメソッドのオーバーライド
|
||||
*/
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* learnメソッドのオーバーライド
|
||||
*/
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* reviewメソッドのオーバーライド
|
||||
*/
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* prepareメソッドのオーバーライド
|
||||
*/
|
||||
}
|
||||
Reference in New Issue
Block a user