JavaA2Z

KAB-studio > プログラミング > JavaA2Z > エンクロージングインスタンスとは

エンクロージングインスタンス

日本語 囲い込み実体
英語 enclosing instance
ふりがな えんくろーじんぐいんすたんす
フリガナ エンクロージングインスタンス

解説

内部クラスにとっての「外部クラスインスタンス」。
 
内部クラスインスタンスは、「外部クラスインスタンスの中に含まれる」という特殊なインスタンスとなる。そのため、内部クラスインスタンスを作るためには、必ず外部クラスインスタンスが必要となる。
その「外部クラスインスタンス」が「エンクロージングインスタンス」である。内部クラスインスタンスを「enclosing」つまり「囲い込む」インスタンスである。

参考サイト

  • (参考サイトはありません)

(KAB-studioからのおしらせです)

サンプルプログラム(とか)サンプルを別ウィンドウで表示サンプルをクリップボードへコピー(WindowsでIEの場合のみ)

// Sample.java
public class Sample
{
    // staticメソッド。
    public static void main( String[] args )
    {
        // 内部クラスのインスタンスをstaticメソッド内で
        // 作ることはできません。
        new InnerClass();
        // コンパイルエラー:
        // 型 Sample のエンクロージング・インスタンスを持つ割り振りを明示的に指定する必要があります。(例 x.new A() で、x が Sample のインスタンス)

        // この「エンクロージングインスタンス」とは、内部クラスにとっての
        // 「自分を包んでくれるクラスのインスタンス」、つまり
        // Sampleクラスのインスタンスのことです。
        // 内部クラスは、「外部クラスのインスタンス」の中に
        // 「内部クラスのインスタンス」がある、という
        // 状態になります。
        // この、「内部クラスのインスタンス」にとっての
        // 「外部クラスのインスタンス」が
        // 「エンクロージングインスタンス」です。
    }

    // 内部クラス。
    public class InnerClass
    {
    }
}
// Sample.java
public class Sample
{
    // staticメソッド。
    public static void main( String[] args )
    {
        // 内部クラスのインスタンスをstaticメソッド内で
        // 作ることはできません。
        new InnerClass();
        // コンパイルエラー:
        // 型 Sample のエンクロージング・インスタンスを持つ割り振りを明示的に指定する必要があります。(例 x.new A() で、x が Sample のインスタンス)

        // この「エンクロージングインスタンス」とは、内部クラスにとっての
        // 「自分を包んでくれるクラスのインスタンス」、つまり
        // Sampleクラスのインスタンスのことです。
        // 内部クラスは、「外部クラスのインスタンス」の中に
        // 「内部クラスのインスタンス」がある、という
        // 状態になります。
        // この、「内部クラスのインスタンス」にとっての
        // 「外部クラスのインスタンス」が
        // 「エンクロージングインスタンス」です。
    }

    // 内部クラス。
    public class InnerClass
    {
    }
}

この単語を含むページ

「みだし」に含まれているページ

「解説」に含まれているページ

「サンプルプログラムとか」に含まれているページ

はてなブックマーク 詳細を表示 はてなブックマーク ブックマーク数
livedoorクリップ 詳細を表示 livedoorクリップ ブックマーク数
Yahoo!ブックマーク 詳細を表示 users
del.icio.us 登録する RSSに登録
サンプルを別ウィンドウで表示
サンプルをクリップボードへコピー(WindowsでIEの場合のみ)
update:2005/12/13
このページは、Javaプログラミング言語についての用語を網羅した辞書「JavaA2Z」の一ページです。
詳しくは「JavaA2Z」表紙の説明をご覧ください。