内部类的概念
内部类就是指一个类定义在另一个类的内部,从而成为外部类的一个成员。因此一个类中可以有成员变量、方法,还可以有内部类。实际上Java的内部类可以被称为成员类,内部类实际上是它所在类的成员。所以内部类也就具有和成员变量、成员方法相同的性质。
比如,成员方法可以访问私有变量,那么成员类也可以访问私有变量了。也就是说,成员类中的成员方法都可以访问成员类所在类的私有变量。
内部类最重要的特点就是能够访问外部类的所有成员。
内部类实例
package test;
public class test{
private static String[] str = new String[10]; //InsideClass类也可以访问str
class InsideClass{
private int i = 1024;
public void Print() {
System.out.println("this is Print()");
}
public InsideClass() {
for(int i=0; i<str.length; i+=3) {
str[i] = ""+i;
System.out.println(str[i]);
}
Print();
}
}
public static void main(String[] args) {
test t = new test();
test.InsideClass inclass = t.new InsideClass(); //成员类创建对象的方式
System.out.println(inclass.i);
inclass.Print();
System.out.println(t.getClass());
System.out.println(inclass.getClass());
}
}
结果:
0
3
6
9
this is Print()
1024
this is Print()
class test.test
class test.test$InsideClass