内部类(3)

大家好,今天我们继续来看看内部类,今天我们来学习一下内部类的分类,我们来看看一共有几种,它们有什么作用,那么话不多说,我们直接开始。

9.1 内部类的分类

先来看下,内部类都可以在一个类的哪些位置进行定义

根据内部类定义的位置不同,一般可以分为以下几种形式:

1、成员内部类(普通内部类:未被static修饰的成员内部类和静态内部类:被static修饰的成员内部类)

2、局部内部类(不谈修饰符)、匿名内部类

注意:内部类其实日常开发中使用并不是非常多,大家在看一些库中的代码的时候可能会遇到的比较多,日常开发中使用最多的是匿名内部类.

注:在外部类中,内部类定义位置与外部类成员所处的位置相同,因此称为成员内部类..

9.1.1实例内部类.

即未被static修饰的成员内部类

注意事项

1.外部类中的任何成员都可以在定例内部类方法中直接访问

2.实例内部类所处的位置与外部类变量位置相同,因此也受public, private笔访问限定符的约束.

3.在实例内部类方法中访问同名的成员时,优先访问自己的,如果要访问外部类同名的成员,必须:外部类名称.this.同名成员来访问

4、实例内部类对象必须在先有外部类对象前提下才能创建.

5.实例内部类的非静态方法中包含了一个指向外部类对要的引用.

6.外部类中,不能直接访问实例内部类中的成员,如果要访问必须先要创建内部类的对象.(相当于成员变量,不初始化无法使用)

那么今天分享就到这里,谢谢大家!!!

相关推荐
考虑考虑2 小时前
JDK26中的Map.ofLazy
java·后端·java ee
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 14 章 MCP 服务端(上):注解式实现与工具来源
java·人工智能·开源
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 15 章 MCP 服务端(下):三种协议形态、Streamable 传输与状态管理
java·人工智能·开源
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 16 章 向量存储(上):`VectorStore` 接口体系、`BatchingStrategy`
java·人工智能·开源
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 12 章 工具循环的流式形态、Usage 累加与扩展体系
java·人工智能·开源
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 23 章 模型供应商实现:从 `OpenAiSetup` 到 Bedrock
java·人工智能·开源
鶴哥只手遮天6 小时前
Spring AI 2.0.1 深度解析-第 06 章 内置 Advisor 全景:13 个实现逐个剖到源码级
java·人工智能·开源
鶴哥只手遮天6 小时前
Spring AI 2.0.1 深度解析-第 03 章 消息体系与 Prompt:不可变模型、`ChatOptions` 与模板渲染
java·人工智能·开源
鶴哥只手遮天6 小时前
Spring AI 2.0.1 深度解析-第 24 章 生产实践与 2.x 迁移:陷阱清单、AOT 与调优
java·人工智能·开源
鶴哥只手遮天6 小时前
Spring AI 2.0.1 深度解析-第 10 章 工具调用(中):执行链路、结果转换与工具限制
java·人工智能·开源