java new 一个内部类_java内部类

article/2025/10/12 1:04:52

java内部类的几种类型:成员内部类,静态内部类,方法内部类,匿名内部类。

成员内部类:成员内部类是类内部的非静态类。成员内部类不能定义静态方法和变量(final修饰的除外)。这是因为成员内部类是非静态的,类初始化的时候先初始化静态成员,如果允许成员内部类定义静态变量,那么成员内部类的静态变量初始化顺序是有歧义的。例子如下:

0bf423ba5e5aa625f8de1340a81b6538.png

运行结果为:访问外部类中的a:99,访问内部类中的b:2

成员内部类的使用方法:

1、 Inner 类定义在 Outer 类的内部,相当于 Outer 类的一个成员变量的位置,Inner 类可以使用任意访问控制符,如 public 、 protected 、 private 等

2、 Inner 类中定义的 test() 方法可以直接访问 Outer 类中的数据,而不受访问控制符的影响,如直接访问 Outer 类中的私有属性a

3、 定义了成员内部类后,必须使用外部类对象来创建内部类对象,而不能直接去 new 一个内部类对象,即:内部类 对象名 = 外部类对象.new 内部类( );

4、 编译上面的程序后,会发现产生了两个 .class 文件

964bcd46639112a27744cca79327c40c.png

其中,第二个是外部类的 .class 文件,第一个是内部类的 .class 文件,即成员内部类的 .class 文件总是这样:外部类名$内部类名.class

另外,友情提示哦:

1、 外部类是不能直接使用内部类的成员和方法滴。如:

77301368d94892e5d459a50994495a6c.png

那么外部类如何使用内部类的成员和方法呢??

答:可先创建内部类的对象,然后通过内部类的对象来访问其成员变量和方法。

Java 编译器在创建内部类对象时,隐式的把其外部类对象的引用也传了进去并一直保存着。这样就使得内部类对象始终可以访问其外部类对象,同时这也是为什么在外部 类作用范围之外向要创建内部类对象必须先创建其外部类对象的原因。

2、 如果外部类和内部类具有相同的成员变量或方法,内部类默认访问自己的成员变量或方法,如果要访问外部类的成员变量,可以使用this 关键字。如:

bbcaa2e45c54a138457ea35576d40d01.png

运行结果:

71d30e871a286f9611e0eb253e11a2ab.png

静态内部类:静态内部类是 static 修饰的内部类,这种内部类的特点是:

1、 静态内部类不能直接访问外部类的非静态成员,但可以通过new 外部类().成员 的方式访问。

2、 如果外部类的静态成员与内部类的成员名称相同,可通过“类名.静态成员”访问外部类的静态成员;如果外部类的静态成员与内部类的成员名称不相同,则可通过“成员名”直接调用外部类的静态成员。

3、 创建静态内部类的对象时,不需要外部类的对象,可以直接创建 内部类 对象名= new 内部类();

d3398dca82c51bdc162b3ba52a226064.png

运行结果 : 


http://chatgpt.dhexx.cn/article/ORldjNHN.shtml

相关文章

java中的内部类

java中的内部类主要分为两类四种: 第一类:定义在外部类局部位置上,分为局部内部类( 有 类名)、匿名内部类(没有类名)。 第二类:定义在外部类的成员位置上,分为成员内部类(没有static修饰)、静态内部类(使用static修饰…

java内部类最全详解

1、成员内部类 内部类与外部类的关系 a.成员内部类的创建需要依赖于外部类对象-(成员方法必须通过对象调用),在没有外部类实例之前无法创建成员内部类对象 b.内部类与外部类相对独立,不是is a 的关系(发动机-汽车&am…

Java内部类详解(含:成员内部类、局部内部类、匿名内部类、静态内部类)

内部类是什么? 字面意思,在类的内部编写的类就叫内部类!即一个类的内部又完整的嵌套了另一个类结构,被嵌套的类称为内部类(inner class),嵌套其他类的类称为外部类(outer class)。 内部类是类的第五大成员→【提示:类的五大成员…

分享15款很棒的 JavaScript 开发工具javascript

在开发中,借助得力的工具可以事半功倍。今天,这篇文章向大家分享最新收集的15款非常有用的 javascript 开发工具。 testswarm: continious & distributed js testing testswarm是mozilla实验室推出的一个开源项目,它旨在为开发者提供在多个浏览器版本上快速轻松测试自己j…

27 个面向开发人员的最佳 Vue.js 开发工具

英文 | https://javascript.plainenglish.io/best-27-vuejs-development-tools-for-developers-bd972bb5f573 01、BootstrapVue 地址:https://bootstrap-vue.org/ 一个用于 Vue.js 构建引导接口的开源库。 02、Vuex 地址:https://vuex.vuejs.org/ Vue.js…

15 款非常有用的 JavaScript 开发工具

开发者有个趁手的工具将事半功倍。今天这篇文章分享给大家最新的15款非常有用的JavaScript 开发工具。 列表如下: TestSwarm: Continious & Distributed JS Testing TestSwarm提供分布式的JavaScript持续集成测试。最初它的创造者John Resig只是将它作为…

03【WebStorm开发工具】

上一篇:02【HTML快速入门】 下一篇:04【】 目录:【HTML5系列教程】 文章目录 三、WebStorm开发工具3.1 WebStorm简介3.2 WebStorm安装3.3 WebStorm基本使用3.3.1 创建项目3.3.2 调整字体大小3.3.3 代码自动补全3.3.4 WebStorm常用快捷键 三…

web开发者工具 js

作为Web开发人员,我为什么喜欢Google Chrome浏览器 【原文地址:http://www.cnblogs.com/QLeelulu/archive/2011/08/28/2156402.html 】 在Google Chrome浏览器出来之前,我一直使用FireFox,因为FireFox的插件非常丰富,更…

JavaScript 专用开发工具

下载地址:http://soooh.com/3/jsedit.rar javaScript专用编辑工具,免费绿色版,需要.net2.0才能运行。 特色:左侧能列出javascript的函数列表,适合修改很大的js文件。

顶级 Vue.js 开发工具

Vue.js已成为当前最热门的JavaScript前端框架。Vue 是构建有用应用程序和网站的完美选择,无论你是经验丰富的开发人员,正希望切换到 Vue 上,还是刚刚开始工作的新人——选择正确的工具都是非常重要的。在合适的工具帮助下,你就能快…

JavaScript开发工具大全

译文:https://blog.fundebug.com/2017/06/19/javascript-tool-list/ 原文:https://da-14.com/blog/ultimate-list-javascript-tools \简介 2017年1月,Stack Overflow年度开发者调研一共访问了64000个程序员,发现JavaScript已经连续…

前端(HTML css JS)开发工具及常用插件推荐

前端编程工具有很多,例如Visual Studio Code(简称VS code),hbuilder,sublime text3,notepad,webstorm等等,今天给大家推荐的是VS code VS code是一个完全免费的软件,页面…

十款最新的JavaScript开发工具

JavaScript 自推出后就大受开发者的青睐,基于 JavaScript 的开发工具不计其数,开发者们可以灵活选择,轻松构建应用。本文分享了十款最新的 JavaScript 开发工具,喜欢的话就赶紧 mark! 1. Kreate 这款工具有助于对 jQu…

9个最好用的JavaScript开发工具和代码编辑器

Web设计和开发是现今越来越流行的职业方向之一。工欲善其事,必先利其器,如果你想在这个领域出类拔萃,那么你就必须具备一些优秀的技能,例如能操作不同的平台、IDE和其他各种各样的工具。 谈到平台和IDE,现在已经不是以…

js基础篇-开发工具

一. Javascript的开发工具主要包括浏览器和代码编辑器 浏览器:用于执行,调试js代码。 代码编辑器:用于编写代码。 1. 常见的浏览器 开发商浏览器特点MicrosoftInternet Explorerwindows操作系统的内置浏览器,用户数量较多Micros…

推荐15款很棒的 JavaScript 开发工具

在开发中,借助得力的工具可以事半功倍。今天这篇文章与大家分享最近发现的一些有用的 JavaScript 和 jQuery 的开发工具,库和插件。希望这些工具在你你即将到来的项目中能用得上。 01、TestSwarm: Continious & Distributed JS Testing 地址&#xf…

分享 27 个面向开发人员的最佳 Vue.js 开发工具

英文 | https://javascript.plainenglish.io/best-27-vuejs-development-tools-for-developers-bd972bb5f573 01、BootstrapVue 地址:https://bootstrap-vue.org/ 一个用于 Vue.js 构建引导接口的开源库。 02、Vuex 地址:https://vuex.vuejs.org/ Vue.js…

JS 开发工具库

JS 开发工具库 前言一、开发环境准备1、安装 Node2、创建项目 二、工具函数的封装1、Ajax 的封装2、datePicker3、文件导出功能的实现3-1 导出 Word 三、项目打包1、打包前准备1.1 初始化项目1.2 下载依赖1.3 配置 Webpack1.4 配置打包命令1.5 项目打包1.6 测试 2、暴露工具函数…

JavaScript 开发者的 5 款必备工具

工欲善其事,必先利其器,一款优秀的开发工具能够极大提高程序开发效率与体验。在Web前端开发中,常用的开发工具有Visual Studio Code、Sublime Text、HBuilder等,下面我们就来介绍这些开发工具的特点。 1.Visual Studio Code Vis…

学javascript需要用到哪些开发工具?分享这几款

学习web前端技术,辅助工具是在学习过程中必须要用到的,包括后面的工作中,辅助工具可以更快的提高我们的工作效率,下面小编就为大家整理了学javascript需要用到的开发工具。 学javascript有哪些开发工具: 1.HBuilder …