成员内部类
说明:
1、在外部类中位于成员的位置,本质也是类。
2、可以添加任意访问修饰符。
3、作用域:整个外部类。
4、成员内部类访问外部,是直接访问。
5、外部类访问成员内部类,通过创建成员内部类的对象,用对象来访问其中的方法和属性。
2、其他先关内容该内容比较简单,主要难点在于如何调用内部类中的方法。
class Outer08 {
private int n1 = 1005;
public void show() {
System.out.println("你好..");
}
public InnerClass08 getInner08Instance() {
return new InnerClass08();
}
public class InnerClass08 {
private int n1 = 10;
public void say() {
System.out.println("n1=" + this.n1);
System.out.println("Outer08的n1=" + Outer08.this.n1);
show();
System.out.println("成员内部类被调用...");
System.out.println("-------------------");
}
}
public void t1() {
InnerClass08 innerClass08 = new InnerClass08();
innerClass08.say();
}
}
该内容比较简单,主要难点在于如何调用内部类中的方法。
方法一:
//main方法中
Outer08 outer08 = new Outer08();
outer08.t1();//t1方法中创建了成员内部类的对象,用该对象调用了say()方法。
public void t1() {
InnerClass08 innerClass08 = new InnerClass08();
innerClass08.say();
}
方法二:
Outer08.InnerClass08 innerClass08 = outer08.new InnerClass08();
innerClass08.say();//outer08为外部类的对象,new InnerClass08()可以看成外部类的一个成员。
方法三:在外部类的方法中返回一个成员内部类的对象。
Outer08.InnerClass08 inner08Instance = outer08.getInner08Instance();
inner08Instance.say();
public InnerClass08 getInner08Instance() {
return new InnerClass08();
}
附:该篇文章仅用于记录所学知识,如有误导敬请海涵!