内部类(3)

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

9.1 内部类的分类

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

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

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

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

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

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

9.1.1实例内部类.

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

注意事项

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

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

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

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

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

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

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

相关推荐
M-Robots echo4 小时前
轻量化裁剪方案解析:M-Robots 模块化构建,适配高低端各类机器人硬件平台
java·机器人·ros·开源社区·atomgit·m-robots
不可求~5 小时前
多模型路由怎么落地:把任务分流写进项目的最小实现
java·前端·数据库
mldong6 小时前
用 DDD 设计工作流引擎:聚合根与充血模型
java·架构
mqiqe7 小时前
AgentScope Java Harness:4. 双层记忆系统 让 Agent 拥有真正的“长期大脑“
java·开发语言
伍一517 小时前
03-文件管理模块-一个看似简单的模块藏着多少细节
java·ruoyi·若依
gugucoding7 小时前
46. 【Java】JUC并发工具:让并发更简单
java·开发语言
Nebula_g7 小时前
JavaSE基础语法:面向对象高级(代码中的成分)
java·开发语言·编程·javase·技术栈·高级语法
AC赳赳老秦8 小时前
公开图片 OCR 数据提取:OpenClaw 合规采集公开信息图,识别文字与表格并转化为结构化数据
java·大数据·前端·数据库·python·php·openclaw
小强库计算机毕业设计9 小时前
SpringBoot+Vue3 学生宿舍管理系统实战
java·spring boot·后端·vue·学生宿舍管理系统
李冰然10 小时前
深入Java集合框架:HashMap源码解析(JDK 8)
java