ローカルクラス(local class)

Java

ローカルクラスとは?

 状態:-  閲覧数:1,265  投稿日:2013-04-24  更新日:2013-04-28  
「メソッド内で定義する」クラス
・メソッドのコードブロックの中で宣言(定義)したクラスを「ローカルクラス」と呼ぶ


ローカル内部クラス


・「ローカルクラス」と同義


宣言(定義)できる場所


・クラスのメソッド内
・より正確には、「外部クラスのメソッド内」
※メソッド内(どこでも良い)で定義すれば、内部にクラスを作成することになるので、結果的に外部クラスのメソッド内に記述したことになる
・つまり、「メソッド内で定義する」クラスと、「外部クラスのメソッド内で定義する」クラスは、結果的に必ず同義となる


常に内部クラスである理由


ローカルクラスは常に内部クラスである
・何故なら、このクラスを宣言(定義)可能な場所は、(クラスの)メソッド内だから
・「ローカルクラス=内部クラス」ではなく、「ローカルクラス<内部クラス」。つまり、内部クラスの一種

「ローカルクラス」の特徴

 閲覧数:389 投稿日:2013-04-25 更新日:2013-04-26 

スコープ(有効)範囲


・宣言したメソッド内だけ


修飾子



public、private、protected等のアクセス修飾子を付けることができない理由
・クラスのスコープは「宣言したメソッド内だけ」、と予め決められているため


「内部クラス」との違い


・内部クラスの特徴である「外部クラスのインスタンス内に内部クラスのインスタンスが含まれる」という仕組みは持っていない

推奨されない理由

 閲覧数:358 投稿日:2013-04-25 更新日:2013-04-25 
・メソッド内にいきなりクラスが現れても戸惑うだけ
・利用は控えた方が良い
※実際にはほとんど利用されない


抽象クラス

トップレベルクラス

コメント投稿(ログインが必要)