内部类介绍

b9c6337727164deea70ab33ab167b1fd.jpg

 

内部类(Inner Class)是在另一个类的内部定义的类。它可以访问外部类的所有成员,包括私有成员。内部类有两种主要形式:局部内部类(定义在方法内部)和成员内部类(定义在类的内部,但不在方法内部)。内部类在编译时会被转换成OuterClassInnerClass的形式,如果内部类是静态的,则变成OuterClassInnerClass.class。如果内部类不是静态的,它会隐含持有对外部类实例的引用。内部类还可以是抽象的,或者可以实现接口。当创建内部类的实例时,需要一个外部类的实例的引用。如果内部类是静态的,则不需要外部类的实例。

匿名内部类是没有名字的内部类。它们通常用于实现接口或继承类,而且只需要一个地方使用。匿名内部类可以直接在需要使用的地方创建实例,不需要单独的类定义。它们常用于回调、适配器和简单的扩展。

以下是一个匿名内部类的例子:

new Thread(new Runnable() {

    public void run() {

        System.out.println("Hello, World!");

    }

}).start();

 

在这个例子中,我们创建了一个Thread的实例,并传入了一个Runnable的匿名内部类。这个匿名内部类实现了Runnable接口,并重写了run方法。

请注意,内部类可以是public的、protected的、包级别的或private的,取决于它们在哪个作用域内被定义。如果内部类是静态的,则不能访问外部类的实例成员。如果内部类没有显式定义构造函数,则会有一个无参的默认构造函数。如果内部类有其他构造函数,那么至少要有一个构造函数调用super()。内部类可以抛出异常,但不能是final的或effectively final的。如果内部类实现了接口,那么它的方法可以是public的或protected的,但不能是private的。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

echart在线图表demo下载直接运行

echart 全面的数据可视化图表解决方案 | 折线图、柱状图、饼图、散点图、水球图等各类图表展示 持续更新中 三色带下表题速度仪表盘 地图自定义图标 动态环形图饼状图 动态水波动圆形 多标题指针仪表盘 温度仪表盘带下标题 横向柱状图排名 环形饼状图 双折线趋势变化

Git的3个主要区域

一般来说,日常使用只要记住下图6个命令,就可以了。但是熟练使用,恐怕要记住60~100个命令。 下面是我整理的常用 Git 命令清单。几个专用名词的译名如下。 Workspace:工作区 Index / Stage:暂存区 Reposito…

学会这几点,轻松制作引人入胜的电子期刊

随着数字化时代的到来,电子期刊已经成为了信息传播的重要载体。它以方便快捷、形式多样、互动性强等特点,受到了广泛的欢迎。那么,如何制作一份引人入胜的电子期刊呢?下面就来为大家分享几点制作电子期刊的小技巧。 1.选择合适的制…

制造业为什么需要ERP企业管理软件?

如今,传统的制造业管理方式逐渐变得力不从心~库存积压、生产效率低下、供应链混乱…想象一下,如果你的企业仍然依赖于手工记录订单、库存和财务数据,那么每当市场发生变动时,你就需要花费大量的时间和精力去重新调整生产计划、更新…

Qt 实战(5)布局管理器 | 5.2、深入解析Qt布局管理器

文章目录 一、深入解析Qt布局管理器1、为什么要使用布局管理器?2、布局管理器类型3、布局管理器用法详解3.1、QBoxLayout(垂直与水平布局)3.2、QGridLayout(网格布局)3.3、QFormLayout(表单布局&#xff09…

LLM2Vec论文阅读笔记

这是篇LLM论文,用decoder-like的LLM去提取embedding文章认为,decoder-like的LLM在text embedding task表现不优的一大原因就是其casual attention mechanism,其实就是mask的问题。所以只要对现有的decoder-only LLM进行如下三步改进&#xff…

接口联调测试

在我们工作过程中,有时需要一些接口进行联调。接口联调测试,就是按照业务要求,把接口进行组合测试。接口组合起来才能实现完整的业务,体现更大的价值。 接口联调测试业务分析: 原因: 项目中的接口是多个…

【数据结构与算法】最小生成树

文章目录 最小生成树(MST)定义 构造最小生成树Prim算法Kruskal算法 最小生成树(MST) 连通图的生成树包含图的所有顶点,并且只含有尽可能少的边。对于生成树来说,若砍去它的一条边,则会使生成树…

DOOPRIME:日本央行7月加息与否取决于数据,购债规模调整无强烈信号

摘要 日本央行行长植田和男近日在议会发言中表示,7月份是否加息将取决于经济数据表现,而购买日本国债与加息是两个独立的问题,不会通过削减购债规模来释放强烈的政策信号。这一表态引发了市场的广泛关注,投资者和经济学家对此进行…

【elementui源码解析】如何实现自动渲染md文档-第四篇

目录 1.前言 2.md-loader - index.js 1)md.render() 2)定义变量 3)while stripTemplate stripScript genInlineComponentText 4)pageScript 5)return 6)demo-block 3.总结 所有章节&#x…

MyBatis逆向工程和MyBatisX插件的使用

文章目录 1.ORM思维2.逆向工程3.MyBatisX插件的使用 1.ORM思维 ORM(Object-Relational Mapping,对象-关系映射)是一种将数据库和面向对象编程语言中的对象之间进行转换的技术。它将对象和关系数据库的概念进行映射,最后我们就可以…

发生了什么?法国市值蒸发超1.8万亿元

KlipC报道:一周前,法国总统马克龙意外宣布提前举行国会议员选举,引发了法国政坛遭受巨震。仅仅一周内,法国股市遭受重大打击,其市值蒸发了约2580亿美元(约1.8万亿人民币)。 多家大型金融机构多…

【Go语言精进之路】构建高效Go程序:了解string实现原理并高效使用

🔥 个人主页:空白诗 🔥 热门专栏:【Go语言精进之路】 文章目录 引言一、Go语言的字符串类型1.1 字符串的定义1.2 字符串的零值可用1.3 字符串的不可变性1.4 字符串的拼接1.5 字符串的常用方法1.6 实际使用示例 二、字符串的内部表…

【Git】多人协作 -- 详解

一、多人协作(1) ⽬前,我们所完成的工作如下: 基本完成 Git 的所有本地库的相关操作,git 基本操作,分支理解,版本回退,冲突解决等等。 申请码云账号,将远端信息 clone…

【牛客面试必刷TOP101】Day33.BM70 兑换零钱(一)和BM71 最长上升子序列(一)

文章目录 前言一、BM70 兑换零钱(一)题目描述题目解析二、BM71 最长上升子序列(一)题目描述题目解析总结 前言 一、BM70 兑换零钱(一) 题目描述 描述: 给定数组arr,arr中所有的值都为正整数且不重复。每个值代表一种面值的货币,每种面值的货币…

数据安全未来之路,天空卫士荣誉领榜《中国数据安全50强(2024)》

《中国数据安全50强(2024)》 数世咨询首份《中国数据安全50强(2024)》报告发布。天空卫士凭借其卓越的技术创新、市场领导力、业务收入能力和企业发展能力,在众多竞争者中脱颖而出,荣登50强榜单&#xff0…

yolov5模型pt转engine

目录 1. 环境准备1.1 安装tensorrt1.1.1 pip安装1.1.2 压缩包安装 2. pt转engine 1. 环境准备 1.1 安装tensorrt 1.1.1 pip安装 pip install tensorrt 1.1.2 压缩包安装 很可能会失败,最保险的方法是下载tensorRT的压缩包,比如:下载Tenso…

分享:2024年(第12届)“泰迪杯”数据挖掘挑战赛省级奖项获奖名单公示

本次竞赛有评选省奖的省份有广东省、广西壮族自治区、河北省、湖北省。各省奖项依据“泰迪杯”全国评审专家组统一评阅的最终成绩区分省份后从高到低依序按比例产生。 广东省 省级奖项获奖名单公示 奖项设置: 一等奖:约占该省份队伍总数的5%&#xff0…

【正则表达式】入门

参考视频:10分钟快速掌握正则表达式_哔哩哔哩_bilibili 这个网站用来测试写的正则表达式效果:regex101: build, test, and debug regex 示例: 限定符 ? 表示前一个字符可有可无 比如这里输入:de? 匹配结果可以得到d和de * 前…

【Android WebView】WebView基础

一、简介 WebView是一个基于webkit引擎、展现web页面的控件。Android的Webview在低版本和高版本采用了不同的webkit版本内核,4.4后直接使用了Chrome。 二、重要类 以WebView类为基础,WebSettings、WebViewClient、WebChromeClient为辅助共同完成安卓段加…