黑马程序员技术交流社区

标题: 成员内部类 [打印本页]

作者: Java黑马    时间: 2015-7-5 18:38
标题: 成员内部类
成员内部类
  内部类可以随意使用外部类的成员方法和成员变量,哪怕是这些成员被修饰为private。
  外部类不能使用内部类的成员。
  内部类对象依赖外部类对象创建
  class OuterClass{
  innerClass inner=new InnerClass();
  public void ouf(){
inner.inf();
}
  class InnerClass{
  InnerClass(){}
  int i=0;
  public void inf(){
  System.out.println("内部类方法");
  }
  }
  public InnerClass getInstance(){
  inner.y=9;
  return new InnerClass();
  }
  
public static void main(String args[]){
OuterClass outer=new OuterClass();
outer.InnerClass inner=outer.getInstance();
  //outer.InnerClass inner=outer.new InnerClass();
  }
  }
  如果在外部类中定义的成员变量与内部类中的成员变量名称相同,可以用this关键字。
  class Outer{
  int i=0;
  class Inner{
  int i=0;
  public void print(int i){
  i++; //调用的形参i
  this.i++; //调用的内部类i
  Outer.this.i++;//调用的外部类i
  }
  }
  }





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2