在JAVA中,其中实例化了一个Inner对象的是( )
public class Outer{
public void someOuterMethod() {
// Line 3
}
public class Inner{}
public static void main( String[] argv) {
Outer o = new Outer();
// Line 8
}
}new Inner(); // At line 3
new Inner(); // At line 8
new o.Inner(); // At line 8
new Outer.Inner(); // At line 8
成员内部类,顾名思义,成员内部类是定义在类内部,作为类的成员的类。如下:
public class Outer {
public class Inner{
}
}
特点如下:
1. 成员内部类可以被权限修饰符(eg. public,private等)所修饰
2. 成员内部类可以访问外部类的所有成员,(包括private)成员
3. 成员内部类是默认包含了一个指向外部类对象的引用
4. 如同使用this一样,当成员名或方法名发生覆盖时,可以使用外部类的名字加.this指定访问外部类成员。如:Outer.this.name
5. 成员内部类不可以定义static成员
6. 成员内部类创建语法:
Outer outer=new Outer();
Outer.Inner inner=outer.new Inner();
public class Outer {
public class Inner{
}
}
特点如下:
1. 成员内部类可以被权限修饰符(eg. public,private等)所修饰
2. 成员内部类可以访问外部类的所有成员,(包括private)成员
3. 成员内部类是默认包含了一个指向外部类对象的引用
4. 如同使用this一样,当成员名或方法名发生覆盖时,可以使用外部类的名字加.this指定访问外部类成员。如:Outer.this.name
5. 成员内部类不可以定义static成员
6. 成员内部类创建语法:
Outer outer=new Outer();
Outer.Inner inner=outer.new Inner();