内部类:
使用内部类减少了命名冲突。
一个内部类可以定义在一个类中,一个方法中甚至一个表达式中。
内部类分为四种:
静态内部类(static inner classes)
成员内部类(member inner classes)
局部内部类(local inner classes)
匿名内部类(anonymous inner classes)
成员内部类(member inner classes)
局部内部类(local inner classes)
匿名内部类(anonymous inner classes)
1、静态内部类(static inner classes)
最简单的内部类。
只能访问外部类的静态成员变量与静态方法。
生成静态内部类对象的方法:
OuterClass.InnerClass inner = new OuterClass.InnerClass();
1.1、相关使用例子:
静态内部类:
class StaticInner{ private static int a = 1; /** * 静态内部类 * 生成的类名:StaticInner$InnerClass */ public static class InnerClass{ //静态内部类可以声明静态的成员变量,其他的内部类不可以 private static int b = 1; public void execute(){ //静态内部类只能访问静态程序 System.out.println(a + b); } } }
main方法中使用:
public static void main(String[] args) { //创建静态内部类 StaticInner.InnerClass innerClass = new StaticInner.InnerClass(); innerClass.execute(); }
2、成员内部类(member inner classes):
成员内部类可以访问外部类的静态与非静态的方法和成员变量。
生成成员内部类对象的方法:
OuterClass.InnerClass inner = new OuterClass().new InnerClass();
在局部内部类中访问外部类的成员变量的方法:
OuterClass.this.a;
2.1、相关使用例子:
成员内部类:
class MemberInner{ private int a = 1; public void execute(){ //在外部类中创建成员内部类 InnerClass innerClass = this.new InnerClass(); } /** * 成员内部类 */ public class InnerClass{ //内部类可以创建与外部类同名的成员变量 private int a = 2; public void execute(){ //this引用的是内部类 System.out.println(this.a); //在内部了中使用外部类的成员变量的方法 System.out.println(MemberInner.this.a); } } }
在main方法中使用:
public static void main(String[] args) { //创建成员内部类 MemberInner.InnerClass innerClass = new MemberInner().new InnerClass(); innerClass.execute(); }
3、局部内部类(local inner classes):
类似于局部变量,不能定义为public,protected,private或者static类型。
定义方法中,只能方法中声明为final类型的变量。
3.1、相关使用例子:
局部内部类:
class LocalInner{ public void execute(){ final int a = 1; /** * 创建局部内部类 */ class InnerClass{ public void execute(){ System.out.println("LocalInner Class"); //局部内部类只能访问final类型的变量 System.out.println(a); } } //只能在所在方法区域创建 new InnerClass().execute(); } }
在main方法中使用:
public static void main(String[] args) { //外部不能直接创建局部内部类 LocalInner localInner = new LocalInner(); localInner.execute(); }
4、匿名内部类(anonymous inner classes):
匿名内部类没有类名,没有class关键字也没有extends和implements等关键字修饰。
匿名内部类会隐式地继承一个父类或实现一个接口。
4.1、相关使用例子:
public static void main(String[] args) { AnonymousInnerClassTest test = new AnonymousInnerClassTest(); /** * 创建匿名内部类 * 生成的类名:AnonymousInnerClassTest$1 */ test.print(new Date(){ //重写toString()方法 @Override public String toString() { return "Hello world."; } }); JButton button = new JButton(); /** * 创建匿名内部类 * 该匿名内部类实现ActionListener接口 * 生成的类名:AnonymousInnerClassTest$1 */ button.addActionListener(new ActionListener(){ //实现接口中的方法 @Override public void actionPerformed(ActionEvent e) { System.out.println("使用匿名内部类实现ActionListener接口"); } }); } public void print(Date date){ System.out.println(date); }
相关推荐
这是一个STM32模拟天黑天亮自动开关灯代码固件,使用了0.96寸OLED屏幕显示文字,例程亲测可用,视频示例可B站搜索 285902929
PHP在线工具箱源码站长引流+在线工具箱源码+多款有趣的在线工具+一键安装 测试环境:nginx+php5.6+mysql5.5 安装说明:上传后访问安装即可
PageNow大数据可视化开发平台_开源版,基于SprigBoot+Vue构建的数据可视化开发平台,灵活的拖拽式布局、支持多种数据源、丰富的通用组件PageNow-基础开源版(基于SpringBoot+Vue构建的数据可视化开发平台)介绍基于SprigBoot+Vue构建的数据可视化开发平台,灵活的拖拽式布局、丰富的通用组件,帮助您快速构建与迭代数据大屏页面。基础开源版仅作为交流学习使用,基础开源版将于2021年3月1日开始维护正式更新。如需购买功能更加完善且完善的企业版,请前往官网进行查看并在线体验企业版。官方网站http://pagenow.cn内容结构服务器邮政程序源码web前端主程序源码(基于Vue-cli3.0为基础构建的项目结构)总体架构选择1、 SpringBoot 主架构框架2、 决赛 基于Db的数据库操作3、 德鲁伊 数据库连接池4、 Swagger2 接口测试框架5、 Maven 项目建设管理前端架构型1、 vue mvvm 框架2、 vue-router 路由管理3、 vuex 状态管理4、 axios HTTP
Matlab领域上传的视频是由对应的完整代码运行得来的,完整代码皆可运行,亲测可用,适合小白; 1、从视频里可见完整代码的内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
本数据整理全各省直辖市自治区从2000年至2021年教育相关140+指标数据,包含普通高校、中等职业学校、普通高中、初中、小学、特殊教育等教师学生数量相关数据,各项教育经费等数据,普通高等学校、职业学校各专业报名人数。内容包括原始数据、线性插值版本、ARIMA填补。 指标 数据指标包含区划代码,地区,长江经济带,经度,年份,普通高等学校数、本科专科招生数、在校学生数、预计本科专科毕业生数、教职工总数、任教教师数。 中等职业、普通高中、初中、小学学校数量、招生人数、在校学生数量、毕业人数、教师教职工等人数统计 教育经费、国家财政性教育经费、民办学校办学经费、教育经费社会捐赠经费、教育经费事业收入、教育经费学杂费。 数据指标较多不一一列举
永磁同步电机模型预测控制仿真 仿真搭建的为永磁同步电机模型预测控制仿真,模型预测部分通过构建s函数来实现代价函数,说明文档中详细的说明了永磁同步电机的数学模型、控制策略、模型预测控制的原理。 仿真中加入转矩扰动来模拟实际运行的干扰,观察模型预测控制对扰动的抗干扰能力。 模型完整,功能全面,说明文档完美配套。 学习模型预测控制的同学们可以参考学习。 (说明文档6k字) 文件包括: [1]仿真模型 [2]相关参考文献
功能说明: 系统主要包括首页、个人中心、用户管理、商家管理、药品信息管理、药品分类管理、发票信息管理、系统管理等功能模块。环境说明: 开发语言:Java 服务器:tomcat7及以上 JDK版本:JDK1.8 数据库:mysql 5.7 数据库工具:Navicat11及以上 开发软件:eclipse/idea 小程序框架:uniapp/原生小程序 开发工具:HBuilder X/微信开发者。。。
圆盘形三维随机裂隙网络。 使用COMSOL with Matlab接口编程。 可以直接导入COMSOL中,无需CAD,无需提取数据,方便快捷可以直接计算。 裂隙由matlab编程生成,能够生成两组不同产状的裂隙。 裂隙长度的分布律可以为确定的裂隙长度,也可以为在一定范围内随机均匀分布的长度。 [1]注释十分详细,运行的示范视频,可以直接改数据生成需要的三维裂隙网格。 [2]三维随机裂隙网络模型均为自己编程,保证能够运行,若有其他需求可以帮改代码 [3]可以生成多组不同产状的裂隙
在qwt3d-examples-master的基础上,修改了一下显示3D图形的FreeMesh,增加显示塔形方法showCone //多边形 Cell c3 = Cell(4); for (i=1; i<count+1; ++i) { c3[0] = count +i; c3[1] = i%count +count +1; c3[2] = count +count+i%count +1; c3[3] = count +count+i; conecell.push_back(c3); }
本数据整理于1990-2016年国家及各省市地区财政支出和城乡收入差距,内容包括各地区财政预算支出、国家财政年度数据、城乡基尼系数、人均可支配收入;其中各地区财政预算支出1990-2016年,数据分析可以看出各省市地区预算支出、地方财政增长率、财政种类占财政支出比重随着年限的增长也在增长。城乡基尼系数指标包括年份、基尼系数、城市基尼系数、农村基尼系数、农村人均可支配收入,通过分析可以看出1992年的基尼系数值发展最低。 本文中需要测算的数据都使用excel形式分门别类整理,其中人均可支配收入指标测算中,可以看出居民人均可支配收入、城镇居民人均可支配收入、农村居民人均可支配收入、居民人均消费支出、城镇居民人均消费支出,农村居民人均消费支出等指标都在随着年限的增长而增长,数据分析得出人们的生活水平质量越来越高。
锂离子电池SOH估计,根据循环中的规律,提取每个循环中的的电压和电流各10个健康因子,设计的基础模型结构为输入层+LSTM层+全连接层+输出层。
内容概要:本文探讨了四旋翼飞行器在某一螺旋翼失效情况下对其飞行性能和稳定性的负面影响,并提出了有效的应对措施。文章首先建立了精确的四旋翼飞行器动力学模型,随后定义了一种螺旋翼失效场景,并设计了一个基于反馈线性化的控制策略来维持飞行器姿态稳定。实验部分采用了Matlab/Simulink进行了详细的仿真实验,验证了所提控制策略的有效性,结果证明可以在螺旋翼失效时让飞行器达到一定的飞行姿态稳定。 适合人群:对自动化飞行设备有兴趣的学者、工程技术人员,特别是在无人机控制理论与实际应用方面具有一定基础的研究人员。 使用场景及目标:该研究成果主要应用于四旋翼无人飞机在遇到硬件突发状况如电机故障、螺旋翼损坏等问题时的安全降落保护;也可以扩展到多旋翼机群组管理和灾难救援场景中,保障任务完成度和飞行可靠性。 其他说明:文章提供了完整的MATLAB仿真源码,便于复现实验并做进一步研究;同时指出了现有控制方案有待优化的地方,并对未来改进的方向给出了建议。 适合人群:对自动飞行设备有兴趣的学者、工程技术人员、研究人员。 使用场景及目标:①确保四旋翼无人飞机遭遇突发硬件异常时的安全操作;②适用于多旋翼机群管理、灾难响应等关键任务环境。 其他说明:文章附带全部MATLAB仿真代码,有利于科研人员快速理解和重复实验;提出对当前方法存在的一些局限性的认识以及今后改进的具体思路。
半自动化冲压设备sw16可编辑全套技术资料100%好用.zip
彩妆小样售卖商城的设计与实现+jsp(源码)
CSDN Matlab武动乾坤上传的资料均是完整代码运行出的仿真结果图,可见完整代码亲测可用,适合小白; 1、完整的代码内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
环境说明: 开发语言:Java 服务器:tomcat7及以上 JDK版本:JDK1.8 数据库:mysql 5.7 数据库工具:Navicat11及以上 开发软件:eclipse/idea 小程序框架:uniapp/原生小程序 开发工具:HBuilder X/微信开发者。。。
Abot 是一款开源 C# Web 爬虫,专为速度和灵活性而构建。
自动叶轮安装机sw18可编辑全套技术资料100%好用.zip
Python等级考试青少年软件编程(python一级)等级考试试卷-客观题(2023年12月)-附答案提取方式是百度网盘分享地址
Python等级考试青少年软件编程(Python五级)等级考试试卷-编程题(2022年9月)-附答案提取方式是百度网盘分享地址