【Java】内部类(Inner Class)如何创建(new)

简单来说,内部类(inner class)指那些类定义代码被置于其它类定义中的类;而对于一般的、类定义代码不嵌套在其它类定义中的类,称为顶层(top-level)类。对于一个内部类,包含其定义代码的类称为它的外部(outer)类。

那么对于内部类,该如何去使用呢?

下面给出静态成员类(Static Member Class)和普通成员类(Member Class)使用的方式。

package cuc;
import cuc.TestClass.Inner1;

public class Main {

    public static void main(String args[]) {
        //静态的内部类
        TestClass.Inner1 inner1 = new Inner1();   //和普通的顶层类new的方法一样
        inner1.report();

        //普通内部成员类
        TestClass tc = new TestClass();
        TestClass.Inner2 inner2 = tc.new Inner2();    //注意这里的使用方式
        inner2.report();
    }
}


两种内部类的定义如下:

package cuc;

public class TestClass {

    //静态成员类
    public static class Inner1{
        public void report(){
            System.out.println("This is a inner class. (NOT static)");
        }
    }

    //普通内部成员类
    public class Inner2{
        public void report(){
            System.out.println("This is a static inner class.");
        }
    }
}


【参考资料】:
1、java - 内部类(Inner Class)详解

你可能感兴趣的:(Java)