第六天-Java内部类

来源:互联网 发布:单片机温度报警器程序 编辑:程序博客网 时间:2024/05/22 17:51
  1. 内部类

    1. 把类定义在另一个类的内部,该类就被称为内部类。
      举例:把类B定义在类A中,类B就被称为内部类。
    2. 内部类的访问规则
      1. 可以直接访问外部类的成员,包括私有
      2. 外部类要想访问内部类成员,必须创建对象
    3. 内部类的分类
      1. 成员内部类
      2. 局部内部类
    4. 成员内部类

      1. private 为了数据的安全性
      2. static 为了访问的方便性

      成员内部类不是静态的:
      外部类名.内部类名 对象名 = new 外部类名.new 内部类名();
      成员内部类是静态的:
      外部类名.内部类名 对象名 = new 外部类名.内部类名();

  2. 一些代码

        class Outer {        public int num = 10;        class Inner {        public int num = 20;        public viod show() {            int num  = 30;            System.out.println(num);//            System.out.println(this.num);//            System.out.println(Outer.this.num);//        }        }    }
  3. 局部内部类
    1. 局部内部类访问局部变量必须加final修饰。
    2. :为什么必须加final修饰?
    因为局部变量使用完毕就消失,而堆内存的数据并不会立即消失。所以,堆内存还是用该变量,而改变量已经没有了。为了让该值还存在,就加final修饰。

  4. 匿名内部类
    1. 局部内部类的简化形式
    2. 格式:
    new 类名或者接口名() {
    重写方法;
    }
    3. 本质:
    继承该类或者实现接口的子类匿名对象

  5. 权限修饰符

    这里写图片描述

阅读全文
0 0
原创粉丝点击