【課題1-06】クラスの定義
プロジェクトタイプ | C#コンソールアプリ※ |
---|---|
プロジェクト名 | Prac_1_06 |
ソリューション名 | PET1 |
ターゲットフレームワーク | .NET 6.0 (長期的なサポート) |
最上位レベルのステートメントを使用しない | 使用しない(チェックオン) |
※ 「コンソールアプリ(.NET Framework)」ではないので注意せよ!
レンタサイクルの貸し出し用の個々の自転車についての情報を表すクラスRentalCycle
を宣言せよ.
クラスのメンバなどについてはRentalCycleクラスの仕様を参照すること.
注意
- 必ずRentalCycleクラスの仕様を読むこと!
- この設問ではクラスの定義のみを行えばよい(Main()で何かをする必要はない).
- この設問ではコンソール(黒画面)への表示処理を作る必要はない
プログラムの概形は_のようにすること(必ず以下をコピーしProgram.cs
全体を上書きすること).
|
|
Main()
メソッドは長いので別に掲載している.以下のボタンをクリックしてコードをコピーし,Main()
メソッドを上書きすること.
正しく実装できた場合,実行結果は_のようになる.
クラスRentalCycleのチェック開始... ( 1/ 8) クラスの定義... OK ( 2/ 8) プロパティ・インデクサの数... OK ( 3/ 8) プロパティIdの定義... OK ( 4/ 8) プロパティCostPerMinuteの定義... OK ( 5/ 8) プロパティBorrowedの定義... OK ( 6/ 8) コンストラクタの数... OK ( 7/ 8) コンストラクタ(引数: string型, int型, DateTime型)の定義... OK ( 8/ 8) コンストラクタ(引数: string型, int型, DateTime型)の動作... OK Congratulations! クラスの定義に関する全てのテストをパスしました.
RentalCycleクラスの仕様
表示するにはここをクリック
- 名前
RentalCycle
- 種別
クラス
フィールド・プロパティ・インデクサの仕様
メンバ名 | 種別 | 型 | アクセス修飾子 | 備考 |
---|---|---|---|---|
Id | プロパティ(※) | string | public | その自転車の管理番号.読み書き可能. |
CostPerMinute | プロパティ(※) | int | public | その自転車の1分あたりの貸出料金(円).読み書き可能. |
Borrowed | プロパティ(※) | DateTime | public | その自転車を貸し出した時刻.読み書き可能. |
- ※: 省略記法(自動実装プロパティ)を用いてもよい.省略記法を用いない場合,対応するフィールドは自分で宣言する(名前は自由).
メソッドの仕様
RentalCycle
クラスは明示的に宣言されたインスタンスメソッドを持たない.
コンストラクタの仕様
RentalCycle
クラスはコンストラクタを1個持つ.
注意: このクラスはデフォルトコンストラクタ(引数なしのコンストラクタ)を持たない(定義する必要はない).
- コンストラクタ1
- アクセス修飾子:
public
- 引数
- id
- 型:
string
Id
プロパティの初期値.
- 型:
- costPerMinute
- 型:
int
CostPerMinute
プロパティの初期値.
- 型:
- borrowed
- 型:
DateTime
Borrowed
プロパティの初期値.
- 型:
- id
- アクセス修飾子:
表示するにはここをクリック : 閉じる
ヒント
なし