jianglilili / jianglilili/guodegang.github.io
类的高级特性
- Dominant language
- No language data
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
### 内部类
如果在一个类中再定义一个类,就将在类中再定义的那个类称为内部类。内部类可分为成员内部类,局部内部类以及匿名内部类
- ### 成员内部类
- **1**.定义了成内部类后,必须使用外部类对象来创建内部类对象,而不能直接去new一个内部类对象
即:【_内部类 对象名=外部类对象.new 内部类()_】;
- **2**.外部类和内部类具有相同的成员变量或方法,内部类默认访问自己的成员变量或方法,要访问外部类的成员变量,则使用this关键字【(_外部类名.this.成员变量_)】
- ### 局部内部类
- **1**._定义_:局部内部类是指在类的方法中定义的内部类,它的作用范围也是在这个方法体内。**匿名内部类就是一种局部内部类**
- **2**.外部类不能访问局部内部类,只能在方法体中访问局部内部类,且**访问必须在内部类定义之后**
- ### 匿名内部类
- **1**.在编写程序代码时,不一定要给内部类取一个名字,可以直接以对象名来代替。匿名内部类的所有实现代码都需要在大括号之间进行编写
- **2**.在图形化编程的事件监控器代码中,会大量使用匿名内部类,这样可以大大简化代码,并增强代码的可读性
- **3**.由于匿名内部类没有名称,所以**匿名内部类使用默认构造方法来生成匿名内部类的对象**。在匿名内部类定义结束后,需要加分号标识,这个分号并不代表定义内部类结束的标识,而代表创建匿名内部类的引用表达式的标识。
- ### 内部类的继承
- 在某个类继承内部类时,必须**硬性给予这个类一个带参数的构造方法**,并且该构造方法的参数为需要继承内部类的外部类的引用,**同时在构造方法体中使用 【外部类对象.super()】语句**,这样才为继承提供了必要的对象引用
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.