【Java開発】第23回 Generics

Java入門講座

はじめに

皆さん。こんにちは!

DreamHanksの254cmです。

今回はGenericについて説明していきます。

Java記事のまとめはこちらです。

前回の記事は【Java開発】第22回 ラッパークラスです。

Genericsとは?

ジェネリクス(Generics)はJava5で導入されたものであり、データ型を一般化する(Generalize)という意味になります。

 

ジェネリクスはクラスまたはメソッドで使用するデータ型をあらかじめ指定する方法です。

 

ジェネリクスを使用するとデータ型ミスマッチの問題をコンパイル過程で予防することができます。

 

そして、ジェネリクスを使用すると型キャストをする必要がなくなり、プログラムの性能が向上されます。

 

サンプル

上記のサンプルのようにジェネリクスでデータ型を指定しなくてデータを格納すると

格納するデータをObject型として格納します。

なので、型キャストをしなければなりません。

ジェネリクスでデータ型をあらかじめ指定すると格納されるデータが指定されたデータで格納されるので、データを出すときに型キャストをしなくても問題ありません。

ジェネリクスの書き方

上記のように作成します。

括弧<>の中には決まった規則はありませんが、一般的に大文字とアルファベットで表現します。

 

サンプル1

上記のように作成したクラスはインスタンスを生成して使うとき、

データ型を指定して使用します。

 

サンプル2

 

上記のように作成されたインターフェースは実装クラスでデータ型を指定することができます。

 

ジェネリクスの範囲指定

ジェネリクスで指定するデータ型の範囲も継承を利用すると制限することができます。

サンプル

 

上記のように作成されているクラスはジェネリクスでデータ型を指定する時、

 

Numberクラスを継承するクラスしか指定できません。

 

上記の画像はジェネリクスでデータ型をStringとしましたが、

 

StringはNumberクラスの子供クラスではないので、コンパイルエラーが表示されます。

 

終わりに

今回の記事は以上になります。

次回はCollection Frameworkを学びましょう。

ご覧いただきありがとうございます。

Java入門講座
スポンサーリンク
dreamhanksをフォローする
スポンサーリンク
DreamHanks Blog

コメント