Java 成员内部类 目录1. 成员内部类2. 获取成员内部类的对象3. 为什么成员内部类中不能存在静态成员( 除final staitic)4. 内部类可以访问外部类的所有成员内部类在一个类中定义另一个类只能为外部类服务。classOutClass{classInnerClass{}}OutClass——外部类InnerClass——内部类1. 成员内部类classOutClass{inta;privateintb;publicstaticintc;publicvoidprint(){System.out.println(OutClass);}classInnerClass{intd;privateinte;publicvoidprint(){System.out.println(InnerClass);}}}2. 获取成员内部类的对象方法1publicstaticvoidmain(String[]args){OutClassoutnewOutClass();//把内部类当作外部类的成员OutClass.InnerClassinnerout.newInnerClass();}方法2publicstaticvoidmain(String[]args){OutClass.InnerClassinnernewOutClass().newInnerClass();}3. 为什么成员内部类中不能存在静态成员( 除final staitic)Error❌:classOutClass{classInnerClass{publicstaticinta;}}原因① 先看什么是成员内部类成员内部类属于对象不是属于类。OutClasso1newOutClass();OutClasso2newOutClass();OutClass.InnerClassi1o1.newInnerClass();OutClass.InnerClassi2o2.newInnerClass();每个InnerClass对象都依附于某个OutClass对象。② 再看 static 的特点static表示属于类而不是属于对象。classStudent{staticintcount;}Students1newStudent();Students2newStudent();count只有一份③ 总结static 修饰的成员变量在类加载的时候就产生了而内部类需要外部类对象才能创建。static 修饰的成员变量属于类而内部类依赖外部类对象才能创建内部类对象,内部类属于对象。以上2点相互矛盾结论成员内部类中不能存在静态成员4. 内部类可以访问外部类的所有成员classOutClass{inta10;publicvoidprint(){System.out.println(OutClass);}classInnerClass{inta20;publicvoidprint(){System.out.println(InnerClass);System.out.println(OutClass.this.a);OutClass.this.print();}}}在不使用OutClass.this.外部类成员的前提下如果外部类和内部类的成员变量名字一样优先使用内部类的成员变量。classOutClass{inta10;publicvoidprint(){System.out.println(OutClass);}classInnerClass{inta20;publicvoidprint(){System.out.println(InnerClass);System.out.println(a);}}}

相关新闻

最新新闻

YOLO11优化:无人机航拍苜蓿花朵检测技术解析

YOLO11优化:无人机航拍苜蓿花朵检测技术解析

1. 项目背景与核心价值无人机航拍结合计算机视觉技术在农业领域的应用正在快速普及。苜蓿作为优质牧草,其花朵数量直接关系到种子产量和质量评估。传统人工统计方式效率低下且误差率高,而基于YOLO11的目标检测技术能够实现毫米级精度的实时花朵识别。这个…

2026/7/22 3:47:02
MQTT协议在储能系统数据采集中的优化实践

MQTT协议在储能系统数据采集中的优化实践

1. 储能站数据上送的行业背景与技术挑战在新能源发电占比不断提升的今天,储能系统已成为电力网络稳定运行的"压舱石"。以某省100MW/200MWh的磷酸铁锂电池储能站为例,单站每天产生的运行参数、环境监测、电池状态等数据点超过50万个&#xff0c…

2026/7/22 3:47:02
TI SoC时钟系统深度解析:PRCM模块与DPLLLJ架构实战指南

TI SoC时钟系统深度解析:PRCM模块与DPLLLJ架构实战指南

1. 项目概述与核心价值在嵌入式系统,尤其是高性能应用处理器(Application Processor)的设计与开发中,时钟系统是整个芯片的“心跳”和“节拍器”。它远不止是提供一个简单的周期性脉冲那么简单。一个设计精良的时钟架构&#xff0…

2026/7/22 3:47:02
AI工具如何革新数学研究:从符号计算到证明辅助

AI工具如何革新数学研究:从符号计算到证明辅助

1. 数学研究中的AI工具革命2019年春天,我在MIT数学系办公室第一次见到张教授调试一个神经网络模型来验证代数几何猜想时,那种震撼感至今难忘。当时系里大多数教授还在用LaTeX手推公式,这位菲尔兹奖得主已经让AI帮他完成了80%的机械计算工作。…

2026/7/22 3:47:02
RAG Agentic技术解析:动态检索与智能决策系统

RAG Agentic技术解析:动态检索与智能决策系统

1. RAG Agentic技术体系解析RAG Agentic(Agentic Retrieval-Augmented Generation)代表了当前AI领域最前沿的知识增强范式,它突破了传统RAG的静态检索模式,赋予大语言模型自主决策和动态调整能力。这种技术架构的核心在于构建一个…

2026/7/22 3:47:02
2026年,口碑好的AI超级员工优质源头厂家测评

2026年,口碑好的AI超级员工优质源头厂家测评

在当今数字化飞速发展的时代,AI超级员工系统成为众多企业提升运营效率、降低成本、增强市场竞争力的有力工具。市场上涌现出了不少相关产品,如无界AI超级员工、知了AI指挥官、炼刀AI超级员工、谷小智AI超级员工和百付AI超级员工。下面将对这些产品进行详…

2026/7/22 3:42:01

月新闻