A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© theape 中级黑马   /  2016-7-14 09:37  /  318 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


内部类Outer 外部类Inner
静态的内部类访问外部类成员
  1. 外部类成员是静态: 外部类.成员     //成员名不相同可以直接调用
  2. 外部类成员非静态: new 外部类().成员        //实例化外部类   // 静态内部类不能直接访问外部类的非静态成员
复制代码


非静态的内部类访问外部类成员
  1. 外部类成员是静态:外部类.成员     //成员名不相同可以直接调用
  2. 外部类成员非静态:外部类.this.成员     //对象化外部类     //成员名不相同可以直接调用
复制代码

创建内部类对象
  1. 内部类非静态: 内部类 内部类对象 = new 外部类对象.内部类();
  2.                           外部类.内部类 对象 = new 外部类().new 内部类();
  3. 内部类是静态: 内部类 内部类对象 = new 静态内部类();
  4.                           外部类.内部类 对象 = 外部类.new 内部类();
复制代码

  1. // 内部类非静态
  2. Outer o = new Outer();
  3. Inner i = new o.Inner();
  4. Outer.Inner i = new Outer().new Inner();   //合并到一行
  5. //内部类是静态
  6. Inner i = new Inenr();      // 完整写法:  Outer.Inner i = Outer.new Inner();        
复制代码
   
方法内部类,只能在外部类方法中使用,方法内部类不能使用访问控制符和 static 修饰符
内部类 可以与 方法内部类 相互嵌套使用,不可多层
内部类不可多层嵌套
内部方法类不可多层嵌套


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马