Java day07 内部类
2016-03-21 10:47
274 查看
//内部类 定义:一个类定义在另一个类里面,作为外部类的一个成员,可以被 private 修饰——当且仅当该类为内部类时 // 访问规则:1 内部类可以直接访问外部类成员(含私有) // ———书写格式 外部类名.this.成员名 // 2 外部类若想访问内部类成员,需要先建立内部类的对象 // 3 不能在外部类外直接建立内部类的对象 // ——∵内部类基于外部类的存在而存在 // ——解决方案:格式 外部类名.内部类名 内部类的对象=new 外部类名().内部类名() // 4 当内部类中有 静态成员时,该内部类也必须是 静态 的 // ——被static修饰 // 应用场景:事物中还包含事物 class Outer { private int num=4; public void method_out() { System.out.println("Hello Outer"); //外部类访问内部类,先建立内部类对象 Inner i=new Inner(); i.function(); } class Inner { int num=3; void function() { int num=2; //分别输出内部类方法中的变量值,内部类成员属性值,外部类成员属性值 System.out.println("Hello Inner "+"\nInner's function's num= "+num +"\nInner's num="+this.num +"\nOuter's num="+Outer.this.num); // method_out(); } } } class InsideClassDemo { public static void main(String[] args) { Outer out=new Outer(); out.method_out(); /* 不能在外部类外直接建立内部类对象 Inner i=new Inner(); i.function(); x */ } }
相关文章推荐
- Java排序算法(七)--简单选择排序(SelectionSort)
- Java排序算法(六)--冒泡排序(交换排序)
- java只有值传递,不存在引用传递
- java中枚举的实现原理
- Java 中 == 比较的是什么?
- Java之Property-统获取一个应用程序运行的次数
- Spring MVC中Session的正确用法之我见02
- Java多线程(一)
- SpringMVC存取Session的两种方法01
- 继承,抽象,接口
- Myeclipse 2015 stable 2.0 完美破解方法
- java使用正则表达式——实例
- Java虚拟机学习 - 类加载机制
- Java day07 多态示例 主板接口
- Java多线程系列--“JUC锁”01之 框架
- java实现base64编码
- Spring MVC 3.0.5+Spring 3.0.5+MyBatis3.0.4全注解实例详解
- Java排序算法(四)--直接插入排序(InsertSort)
- Java中数组的问题(三)
- Java基础之OOM