【Java学习】内部类

面向对象系列六

一、类级别

1.静态成员

2.非静态成员与方法

二、类的创建与成员管理

1.类的创建

2.类的成员管理

三、常见的内部类

1.非静态内部类

2.静态内部类

3.匿名内部类

4.局部内部类


一、类级别

1.1静态成员

静态成员类级别的是能一路直属都是在类层面的,所在的区域一定是在最外层类变量空间中一层一层往里的,且它们的生命周期与最外层类共存,最外层类一加载它们也一层层往里加载好的,一路与类共存与最外层类共存


1.2非静态成员与方法

非静态成员(模具变量)、所有方法都是属于所在类的类变量的类层面但不一定一路直贯到顶层类(如果一路贯到顶层类的模具、方法,也是属于类级别)

非静态成员、非静态方法都是设计于似复刻变量即实例对象使用的:

  • 非静态成员是属于当前类变量下的但作为模具不能直接使用的,需要对当前类创似复刻变量创非静态成员的复制变量
  • 非静态方法需要创出有当前似复刻变量对象的引用去访问调用使用上非静态方法

二、类的创建与成员管理

2.1类的创建

类变量创建、似复刻变量new出时可在刚创建出来的它们后面加{}增创也成为其变量的空间由其管理的


2.2类的成员管理

{}里成员的静态与非静态也是其变量管理它{}里面成员的一种方式

  • 普通类即顶层类它不作成员被管理的没有静态与非静态之分
  • 内部类是在类内部定义的类,都是定义在顶层类{}里的类,内部类都是其所在外部类中的一个成员都是作为一个变量即类变量是有静态与非静态被管理的静态的外部类类变量可对此类成员直接访问,非静态的需要实例外部类类变量创外部类的似复刻变量复制有它对复制的它访问

一个类本身{}里面就可以创有静态与非静态去管理此类{}里的内容

在此类本身上给它修饰静态与非静态后的是说明该类本身又是作为一个成员被上层类变量管理下的

一个类被上层类静态与非静态管理后,它类本身{}里面的静态与非静态内容就要加上对将来被上层类管理使用场景负责的,但其实静态与非静态修饰类并不会直接影响在类里面定义静态与非静态内容,因为静态与非静态都是对于外部类管理它里面成员而言的,只是内部类成员要多上对将来使用场景负责,其实不管是被静态还是被非静态修饰,对于类本身而言没有影响的,在它们里面的非静态方法自然都有此类变量引用的隐藏形参,不是说被static修饰后的类就不能对它创似复刻变量了,一样是可以的


三、常见的内部类

3.1非静态内部类

非静态内部类是其所在的外部类中的一个正常非静态成员,是外部类的一个成员变量,非静态的成员变量,同样是作为模具给按此所在的外部类类变量创似复刻变量时的模具变量给用来创复制变量的,对着模具创好能用来用的复制变量在似复刻变量里面属于对象里在堆区,它非静态类{}里创的类变量的内容在模具被创好成复制变量拿来用时类变量本身是实例复制在似复刻变量里在堆区的,这个非静态类成员类变量被作模板在复制变量里创,类变量里的内容都会在堆区给使用的,它类变量里的成员不能是静态的,因为使用时它们都是在堆上的都不在类级别空间上(但未使用未复制时非静态内部类本身是模具在类级别空间上)但允许static final修饰的常量

  • 非静态内部类{}里不能有静态、允许static final常量

3.2静态内部类

静态内部类是所在外部类的一个静态成员,它与非静态内部类成员作为模具一样,都是直属最外层类级别的,对它作为内部类成员,去使用时不用创外部类的似复刻变量复制拿到它才可用的,它是直接可以用外部类变量直接拿到的,直属类级别(非静态内部类作为模具不能直接使用,需要对外部类创似复刻变量创它的复制变量后才可拿到使用)不需要复制实例化它的,直接通过类级别即可使用,它里面成员的静态与非静态都无使用场景限制,正常有它的静态与非静态成员与方法

  • 静态内部类{}里正常有它的静态与非静态成员与方法

3.3匿名内部类

匿名内部类是似复刻变量new出创建出似复刻变量时{}增创定义的类它没有类名不能被static修饰声明为静态,它是非静态的内部类匿名内部类{}的实例与它创的那个似复刻变量的实例一起完成的,{}类的内容在定义时就完成了实例化它的使用是一次性的因为匿名后面无法再用此类变量创似复刻变量即对于所在外部类来说它是一个非静态成员属于是非静态内部类,类的内容将来被似复刻变量复制,它一创建就实例后只能在它所在的{}里一次用的,再用就要再调用再创一个新的实例再用的,类的{}内容也是作为它new创的它那个类的似复刻变量的增扩在堆区的,所以匿名内部类{}里面的内容也不能有static的也不允许有static final修饰的常量,而且访问的数据只能是全局编译下没有修改过的默认final数据

  • 匿名内部类{}里不能有静态、不允许static final常量、不允许有被修改的非final数据

3.4局部内部类

局部内部类的生命在所在方法、代码块{}内部,不可能是类级别的{}生命同样长的,它不属于类级别的,不能用static修饰,也是非静态的内部类里面{}的内容不能有静态的,也不允许有static final修饰的常量

  • 局部内部类{}里不能有静态、不允许static final常量

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/25852.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【卡牌——二分】

题目 分析 发现答案具有二分性&#xff0c;果断二分答案 代码 #include <bits/stdc.h> using namespace std; using ll long long;const int N 2e510;int n, a[N], li[N]; ll m;bool check(int x) {ll t m;for(int i 1; i < n; i){if(a[i] > x) continue; //…

< 自用文儿 > Gobuster 暴力扫描工具与 SecLists 安全测试词表集合

Ethice 道德问题 GFW 的保护下&#xff0c;很多的设备操作系统是停留在更老的版本&#xff0c;应用软件也是&#xff0c;因此很多的漏洞没有被修复。通讯没有使用加密&#xff0c;例如网页没有使用 HTTPS 网站很多。几乎是半裸的在网络上等着被食。 不做恶是下限。 环境&…

java后端开发day23--面向对象进阶(四)--抽象类、接口、内部类

&#xff08;以下内容全部来自上述课程&#xff09; 1.抽象类 父类定义抽象方法后&#xff0c;子类的方法就必须重写&#xff0c;抽象方法在的类就是抽象类。 1.定义 抽象方法 将共性的行为&#xff08;方法&#xff09;抽取到父类之后。由于每一个子类执行的内容是不一样…

AI数据分析:用DeepSeek做数据清洗

在当今数据驱动的时代&#xff0c;数据分析已成为企业和个人决策的重要工具。随着人工智能技术的快速发展&#xff0c;AI 驱动的数据分析工具正在改变我们处理和分析数据的方式。本文将着重介绍如何使用 DeepSeek 进行数据清洗。 数据清洗是数据分析的基础&#xff0c;其目的是…

第2_3章_入门管理资源服务器

入门 对于某些应用程序&#xff0c;你可以参考以下资源&#xff0c;快速开始使用 Keycloak 授权服务&#xff1a; 在 Wildfly 中保护 JakartaEE 应用程序&#xff08;https://github.com/keycloak/keycloak-quickstarts/tree/latest/jakarta/servlet-authz-client&#xff09…

2025年如何实现安卓、iOS、鸿蒙跨平台开发

2025年如何实现安卓、iOS、鸿蒙跨平台开发 文章目录 2025年如何实现安卓、iOS、鸿蒙跨平台开发1. 使用统一开发框架2. 华为官方工具链支持3. 代码适配策略4. 生态兼容性处理5. 性能与体验优化总结&#xff1a;方案选择建议 本文首发地址 https://h89.cn/archives/324.html 最新…

Azure Speech

1、文字转语音(Text-To-Speech, TTS) 2、语音转文字(Speech-To-Text): Azure Speech to Text 1- 环境配置&#xff1a;Microsoft Azure 注册使用免费服务&#xff1a; 需要信用卡&#xff0c;本人没有&#xff0c;所以没有完成注册

Cursor AI编程-详细教程

一点准备工作 Cursor方法论&#xff1a;简单到没有方法 Cursor能做什么 Cursor官网&#xff1a;https://www.cursor.com/ja Cursor文档&#xff1a;Cursor – Welcome to Cursor Cursor论坛&#xff1a;Weekly - Cursor - Community Forum 写程序代码 举例&#xff1a; 设…

Linux共享内存

共享内存原理 简而言之&#xff0c;就是两个进程指向了同一块物理空间。&#xff08;它们都能看到同一块内存&#xff09; 共享内存在内核中同时可以存在很多个&#xff0c;OS要管理所有的共享内存。 如何保证两个不同进程看到的是同一个共享内存呢&#xff1f;&#xff1f;&…

搭建gn环境踩坑存档

流程 1. 项目根目录下新增.gclient和.gclient_entries //.gclient solutions [{"name": "src","url": "","managed": False,"custom_deps": {},"custom_vars": {},}, ]// .gclient_entries entries …

CMU15445(2023fall) Project #3 - Query Execution(上)详细分析

晚日寒鸦一片愁 柳塘新绿却温柔 若教眼底无离恨 不信人间有白头 ——鹧鸪天 完整代码见&#xff1a; SnowLegend-star/CMU15445-2023fall: Having Conquered the Loftiest Peak, We Stand But a Step Away from Victory in This Stage. With unwavering determination, we pre…

【网络安全 | 漏洞挖掘】利用文件上传功能的 IDOR 和 XSS 劫持会话

未经许可,不得转载。 本文涉及漏洞均已修复。 文章目录 前言正文前言 想象这样一个场景:一个专门处理敏感文档的平台,如保险理赔或身份验证系统,却因一个设计疏漏而成为攻击者的“金矿”。在对某个保险门户的文件上传功能进行测试时,我意外发现了一个可导致大规模账户接管…

知识图谱-资源网

知识图谱-资源网 http://openkg.cn/datasets-type/https://www.ownthink.com/knowledge.html

【湖北省计算机信息系统集成协会主办,多高校支持 | ACM出版,EI检索,往届已见刊检索】第二届边缘计算与并行、分布式计算国际学术会议(ECPDC 2025)

第二届边缘计算与并行、分布式计算国际学术会议&#xff08;ECPDC 2025&#xff09;将于2025年4月11日至13日在中国武汉盛大召开。本次会议旨在为边缘计算、并行计算及分布式计算领域的研究人员、学者和行业专家提供一个高水平的学术交流平台。 随着物联网、云计算和大数据技术…

【Qt】MVC设计模式

目录 一、搭建MVC框架 二、创建数据库连接单例类SingleDB 三、数据库业务操作类model设计 四、control层&#xff0c;关于model管理类设计 五、view层即为窗口UI类 一、搭建MVC框架 里面的bin、lib、database文件夹以及sqlite3.h与工程后缀为.pro文件的配置与上次发的文章…

Grok3使用体验与模型版本对比分析

文章目录 Grok的功能DeepSearch思考功能绘画功能Grok 3的独特功能 Grok 3的版本和特点与其他AI模型的比较 最新新闻&#xff1a;Grok3被誉为“地球上最聪明的AI” 最近&#xff0c;xAI公司正式发布了Grok3&#xff0c;并宣称其在多项基准测试中展现了惊艳的表现。据官方消息&am…

Pytest测试用例执行跳过的3种方式

文章目录 1.前言2.使用 pytest.mark.skip 标记无条件跳过3.使用 pytest.mark.skipif 标记根据条件跳过4. 执行pytest.skip()方法跳过测试用例 1.前言 在实际场景中&#xff0c;我们可能某条测试用例没写完&#xff0c;代码执行时会报错&#xff0c;或者是在一些条件下不让某些…

DeepSeek开源周Day5: 3FS存储系统与AI数据处理新标杆

项目地址&#xff1a; GitHub - deepseek-ai/3FS: A high-performance distributed file system designed to address the challenges of AI training and inference workloads.GitHub - deepseek-ai/smallpond: A lightweight data processing framework built on DuckDB and…

什么是多线程?线程池?

文章目录 一、什么是多线程&#xff1f;二、多线程的实现方法1. 继承Thread类,重写run方法2. 实现Runnable接口&#xff0c;并创建Thread对象3. Callable和Future 三、线程的5种状态**New&#xff08;新创建&#xff09;****Runnalbe(可运行)****Running****Blocked(阻塞)****等…

MES生产制造执行管理系统(源码+配套文档)

在当今竞争激烈的制造业环境中&#xff0c;企业要想保持竞争优势&#xff0c;就必须不断提升生产效率、优化管理流程。MES&#xff08;制造执行系统&#xff09;作为连接上层计划管理与底层工业控制的桥梁&#xff0c;正逐渐成为众多制造企业转型升级的关键工具。一个功能全面的…