面向对象(下)-内部类的分类

面向对象(下)-内部类的分类

6.7 类的成员之五:内部类(Inner Class)

当一个事物的内部,还有一部分需要一个完整的结构进行描述,而这个内部的完整结构又只为外部事物提供服务,那么整个内部的结构最好使用内部类。

在Java中,允许一个类的定义位于一个类的内部,前者称为内部类,后者称为外部类。

Inner Class的名字不能与包含他的外部类的类名相同;

分类:成员内部类(static成员内部类和非static成员内部类)

局部内部类(不谈修饰符:方法内、代码块内、构造器内)、匿名内部类

java 复制代码
public class InnerClassTest {

    static class A{}  // 静态成员内部类
    class B{}  // 非静态成员内部类


    InnerClassTest() {
        class B{}  // 构造器局部内部类,局部和成员可以同名
    }

    {
        class C {}  // 代码块局部内部类
    }

    void method() {
        class D {}  // 方法局部内部类
    }
}
相关推荐
金銀銅鐵3 小时前
带您看懂字节码指令(二):空循环里有什么
java·后端·ai编程
§ꦿCFོ༉4 小时前
嵌入式八股文—C语言入门学习(四)
c语言·开发语言·学习
吴名氏.5 小时前
Java转AI Agent教程(第十三周)混合检索与重排
java·数据库·人工智能·ai·ai agent
.痞老板.6 小时前
java ee--多线程(进阶)
java·java-ee
2603_969694856 小时前
【JavaWeb学习记录】MyBatis核心知识点与实战笔记:从入门到动态SQL
笔记·sql·学习·mysql·mybatis·javaweb·学习方法
深入云栈7 小时前
Netty 4.2.x 源码深度解析 (二十三):ByteBuf 核心设计 —— 索引、类型与零拷贝
java·后端·架构
wang_shu_mo_ran8 小时前
MyBatis 从入门到进阶(一)
java·spring·mybatis
量化分析码农10 小时前
股票历史数据的复权参数对照:多级别返回的字段与数值差异
java·javascript·后端
猫猫不是喵喵.10 小时前
从0到1创建一个微服务项目
java·数据库·微服务·1024程序员节
瑞雪兆丰年兮10 小时前
JavaWeb-day13-SpringBootWeb事务管理&AOP
java·开发语言·springboot·javaweb·事务·web·aop