访问特点:
内部类可以直接访问外部类中的成员,包括私有成员。
而外部类要访问内部类中的成员必须要建立内部类的对象。
内部类定义在成员位置上
可以被private static成员修饰符修饰。
被static修饰的内部类只能访问外部类中的静态成员。
内部类定义在局部位置上
也可以直接访问外部类中的成员。
同时可以访问所在局部中的局部变量,但必须是被final修饰的。
关于内部类直接访问外部类成员的代码体现:
package neibulei1;
public class ChengYuanNei {
public static void main(String[] args) {
Wai1 w = new Wai1();
w.shw();
}
}
//外部类
class Wai1 {
//外部类的一个成员变量
int a = 10;
public void shw()
{
Nei1 n=new Nei1();
n.shw();
}
//内部类
class Nei1 {
public void shw() {
//内部类直接输出了外部类的成员属性
System.out.println("调用了外部类的成员"+a);
}
}
}
|