Java 内部类
1. 常规内部类(成员内部类)
就是做为外部类的成员,可以直接使用外部类的所有成员和方法,包括private和静态成员。
当成员内部类访问和外部类同名的方法或成员的时候,实际上访问的是内部类的成员和方法。如果成员内部类想引用外部类对象,可以用
要创建内部类对象,= 内部类名() 来创建, : i = Inner();
或通过外部类的方法返回。如下例:
[java] view plain copy
package ;
public class Outer {
public String str1 = "str1";
protected String str2 = "str2";
private String str3 = "str3";
private static String str4 = "str4";
private void print() {
("Outer str1:" + str1);
("Outer str2:" + str2);
("Outer str3:" + str3);
("Outer str4:" + str4);
}
public Inner getInnerInstance() {
return new Inner();
}
public class Inner {
public String str3 = "Inner str3";
private String str4 = "Inner Str4";
public void print() {
("Inner class print");
("Outer str1:" + str1);
("Outer str2:" + str2);
("Outer str3:" + str3);
("Outer str4:" + str4);
();
("Outer:" + );
("Outer str3 actual should be:" + );
("Outer static str4 actual should be:" + );
}
}
public static void main(String[] args) {
Outer o = new Outer();
i = Inner();
i2 = ();
();
();
}
}
结果:
[java] view plain copy
Inner class print
Outer str1:str1
Outer str2:str2
Outer str3:Inner str3
Outer str4:Inner Str4
Outer str1:str1
Outer str2:str2
Outer str3:str3
Outer str4:str4
Outer:.******@15db9742
Outer str3 actual should be:str3
Outer static str4 actual should be:str4
Inner class print
Outer str1:str1
Outer str2:str2
Outer str3:Inner str3
Outer str4:Inner Str4
Java 内部类 来自淘豆网m.daumloan.com转载请标明出处.