Java内部类

一:内部类

1.什么是内部类:

在一个类里面,再定义一个类

在这里A类就是外部类,B类就是内部类。

2.内部类的作用:

当我们写一个这Javabean类时如果按照以前的思维:

但是这里发动机也是一个独立的个体,发动机的相关属性跟车子本身没有太大关系,但是发动机又依赖车存在。

所以我们使用内部类,表示车里面有发动机,发动机是一个独立的个体。

这里Car就是外部类,Engine是内部类。

3.内部类的访问特点:

1.内部类可以直接访问外部类的成员,包括私有。

2.外部类要访问内部类的成员,必须要创建对象。(外部类不能直接访问内部类的成员)

究其原因是因为

这里面有个隐含的.this所以外部类无法直接访问内部类的成员,如果要访问

4.内部类的分类:

成员内部类(了解)

静态内部类(了解)

局部内部类(了解)

匿名内部类(重点)

二:成员内部类:

1.成员内部类的书写:

写在成员位置(类中方法外),属于外部类的成员之一。  

可以被修饰符修饰比如  private,默认,protected,public,static。

在成员内部类里面,JDK16之前不能定义静态变量,JDK16之后才可以

2.如何创建成员内部类的对象:

方法一:在内部类中编写方法:对外提供内部类的对象。

方法二:直接创建:  外部类名.内部类名.  对象名=外部类对象.内部类对象;

三:静态内部类:

1.访问:

一种特殊的成员内部类 (加上static)。

静态内部类只能访问外部类的静态变量和静态方法,如果想要访问非静态需要创建对像。


2.创建以及调用方法:

四:匿名内部类:

1.定义与格式

       是内部类的简化写法。他是一个隐含了名字的内部类。开发中,最常用到的内部类就是匿名内部类了。

包含了:

      继承或者实现关系

      方法重写

      创建对象

匿名内部类必须继承一个父类或者实现一个父接口

2.特点:

  1. 定义一个没有名字的内部类

  2. 这个类实现了父类,或者父类接口

  3. 匿名内部类会创建这个没有名字的类的对象

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨小瑾的鸭舌帽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值