内部类

内部类

概念

  1. 将一个类定义到另一个类内部。

  2. 分为成员内部类(类中方法外)和,局部内部类(方法中)。

    在成员位置定义的类,被称为成员内部类。
    在局部位置定义的类,被称为局部内部类。

  3. 创建成员内部类的语法:外部类名.内部类名 对象名 = 外部类对象.内部类对象;

成员内部类的特点

  1. 内部类可以直接访问外部类的成员变量,方法,私有方法。外部类想访问内部类的成员,需要创建内部类的对象。
  2. 内部类可以用private修饰,修饰后,外部类不能直接访问,要想继续访问,提供get和set方法。
  3. 内部类可以用static修饰,修饰后创建内部类的语法要改变(不加时的语法:Wai.Nei nei=new wai().nei Nei)Wai.Nei nei=new Wai.Nei()。静态内部类要访问外部类的成员,只能访问静态的。(静态只能访问静态)。

局部内部类

  1. 局部内部类可以直接访问外部
  2. 类的成员,包括私有的成员。
  3. 局部内部类外界不能直接创建其对象。
  4. 想要调用就得间接调用。
  5. 局部内部类访问外部类的局部变量时要加final(局部变量变常亮),jdk1.8默认加上。因为方法调用完局部变量就消失了,局部变量的存在时间小于对象存在时间,所以加final能让对象继续访问局部变量。

匿名内部类

  1. 是局部内部类的简写
  2. 本质上是一个实现了该接口或继承了抽象类的子类对象。
  3. 匿名内部类可以new出子类的对象。不用知道子类是谁,只要知道谁是子类对象。
  4. 匿名内部类可以作为参数返回
  5. 格式:new 类名或者接口名(){重写方法;} ;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值