C語言中文網 目錄

Java內部類:Java靜態內部類

靜態內部類是指使用 static 修飾的內部類。示例代碼如下:
public class Outer
{
    static class Inner
    {
        //靜態內部類
    }
}

上述示例中的 Inner 類就是靜態內部類。靜態內部類有如下特點。

(1) 在創建靜態內部類的實例時,不需要創建外部類的實例。
public class Outer
{
    static class Inner{}
}
class OtherClass
{
    Outer.Inner oi=new Outer.Inner();
}

(2) 靜態內部類中可以定義靜態成員和實例成員。外部類以外的其他類需要通過完整的類名訪問靜態內部類中的靜態成員,如果要訪問靜態內部類中的實例成員,則需要通過靜態內部類的實例。
public class Outer
{
    static class Inner
    {
        int a=0;    //實例變量a
        static int b=0;    //靜態變量 b
    }
}
class OtherClass
{
    Outer.Inner oi=new Outer.Inner();
    int a2=oi.a;    //訪問實例成員
    int b2=Outer.Inner.b;    //訪問靜態成員
}

(3) 靜態內部類可以直接訪問外部類的靜態成員,如果要訪問外部類的實例成員,則需要通過外部類的實例去訪問。
public class Outer
{
    int a=0;    //實例變量
    static int b=0;    //靜態變量
    static class Inner
    {
        Outer o=new Outer;
        int a2=o.a;    //訪問實例變量
        int b2=b;    //訪問靜態變量
    }
}

精美而實用的網站,提供C語言C++STLLinuxShellJavaGo語言等教程,以及socketGCCviSwing設計模式JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo