プログラミング Java

【Java】オブジェクト指向の練習題材(会員オブジェクト)

投稿日:

前回記事、オブジェクト指向とは何なのかを簡単に説明してみるの練習題材です。

 

仕様

以下の会員クラスを作成し、Mainクラスで表示する。
会員クラスには、「会員」という単位で持つことできる値(フィールド)と
機能(メソッド)を実装していきます。

会員クラス

・クラス名:Memberとする。
・以下のフィールドを持つ。
 氏名、性別、年齢
・インスタンス生成時に、全フィールドの値を指定する。
・以下のメソッドを持つ。
 名前の取得(引数:なし、戻り値:名前)
 性別の取得(引数:なし、戻り値:性別)
 年齢の取得(引数:なし、戻り値:年齢)
 ユーザ情報の取得(引数:なし、戻り値:名前+性別+年齢)

Mainクラス

・クラス名:Mainとする。
・Memberクラスのインスタンスを生成する。
・Memberクラスのユーザ情報を表示する。

 

サンプルコード

 

年齢の負数入力への対処

サンプルコードでは、年齢は負数の入力が可能になっています。
負数入力時は、例外を投げるように修正し、正数のみ入力可能となるように修正します。

挿入場所

コンストラクターの、this.age = age; の手前に挿入します。

解説

MessageFormat.format()は、メッセージを整形して出力するメソッドです。
指定したインデックスと値を紐づけることができます。
今回の場合、name={0} age={1} の0と1は以下のように紐づきます。
0 ← name、1 ← age

(図解)

実行結果

実行すると、fusuuの会員オブジェクトが例外となったことを確認できました。

 

まとめ

・「会員」オブジェクトで持つべき値(フィールド)と機能(メソッド)を定義する。
・インスタンスを生成する際の値は、コンストラクタで定義する。
・インスタンス生成後、そのオブジェクトのメソッドを使用することができる。
・不正値はコンストラクターで例外処理にかけることができる。

 
最後までお読み頂き、ありがとうございました!
ご意見・ご要望がありましたら、遠慮なくコメント下さい!
もし内容が良かったらランキング評価を頂けると励みになります(^^)

ランキング評価する

-プログラミング, Java
-,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

難しい,困難,頭を抱える

オブジェクト指向が難しいと思うならこれを読め!

オブジェクト指向はJava、JavaScript、PHP、Python、Rubyなどなど 色んな言語で使われているパラダイム(考え方)です。 上から順に追っていくだけ(手続き型)ではわからない仕組みに …

junit, テスト, junit5

【Junit5】最小構成のテストクラス

概要 Junit5の最小構成のテストクラスはテストメソッドを1つだけもつクラスです。 テストメソッドが0個だとテストクラスとして認識されません。 環境 Java11 Junit5.7 Gradle7. …

ModelからBindingResultが消える原因と対処方法

環境 Java(SpringFramework) Thymeleaf 状況 更新画面でバリデーションエラーにより更新が失敗したというようなケースにおいて、 BuindingResultにFormのエラ …

プログラミングスキルを向上させる3ステップ

プログラミングスキルを向上させるための3ステップです。 私自身が実践していることであり、向上を実感している方法です。 写経 本をベースに写経します。 写し書きをして動いたらOKではなく、以下のような問 …

【SpringBoot入門】#10~ 更新機能の実装

概要 既に登録済みの書籍情報を画面上で編集し、更新する処理を実装します。 更新した内容が反映されていることを確認するところまでを行います。   フロントエンド 更新情報のリクエスト edit.html …

■運営者プロフィール
IT業界10年のエンジニア。
PHP -> VBA -> Javaと渡り歩いてきて、今はJavaをメインにフリーランスエンジニアとして活躍中!

[保有資格]
・Java SE 11 Gold

一度はエンジニアを辞めざるを得なかった私が再びエンジニアとして復活した数奇な物語

SpringFramworkの良書

■おすすめ教材
Javaの基本を学んだ人が、次のステップとして読む本(中級者向け)

※SpringはJavaのFrameworkの1つです。
変更のしやすさ、保守性の高さが特徴です。