|
〜クラス編〜 無名クラス |
|
無名クラスというのを一言で言うとクラス名が無いクラスです。(そのまんまですね 説明はちょっとしにくいので、具体的にどんな感じかと言うですと、 オブジェクトを作成するときに、クラスを宣言するって感じです。 書式: new コンストラクタ(){ フィールド(インスタンス変数) : メソッド(インスタンスメソッド) : }; 上の書式のような形になってるです。 そして具体的には、戻り値などで利用したりするです。 アクセス修飾子 作成するクラス名 メソッド名(){ return new コンストラクタ(){ フィールド(インスタンス変数) : メソッド(インスタンスメソッド) : }; } 実際にこれを使うと何がおこるかというですと、 継承無しでポリもーフィズムを実現させることができるです。 そのサンプルプログラムを見てみるです。内容はRei20_1をベースにしてみたです。
SelectAnimalクラスでどの動物かを選択するような形になってるです。選択すると 同時に、そのクラスの処理を定義しているです。 SelectAnimalクラスを作らずに、直接main()メソッド内の配列でnew 動物()を使う サンプルも見てみるです〜
このプログラムだとどんな動物かは分からないですが、宣言されてる内容からそれ ぞれ、肉食、草食と判断することができるです。ただ、無名クラスは宣言しすぎると 見た目がきたなく、分かりづらくなってしまう欠点もあるです。 TOPに戻る Java講座に戻る |