Java 内部静态类_静态内部类特点

Java 内部静态类_静态内部类特点Java中的内部类是在Jdk1.1版本之后增加的,内部类是Java语言中一个比较重要的概念,如果能把内部类运用好,那么会明显增强Java程序的灵活性。要想清楚static内部类和非static内部类的区别,首先要了解内部类的概念及特点,然后再进行一个全面的对比。什么是内部类呢?简单的说就是在一个类的内部又定义了一个类,这个类就称之为内部类(InnerClass)。看一个简单的例子:内…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

Java中的内部类是在Jdk1.1版本之后增加的,内部类是Java语言中一个比较重要的概念,如果能把内部类运用好,那么会明显增强Java程序的灵活性。

要想清楚static内部类和非static内部类的区别,首先要了解内部类的概念及特点,然后再进行一个全面的对比。

什么是内部类呢?简单的说就是在一个类的内部又定义了一个类,这个类就称之为内部类(Inner Class)。看一个简单的例子:Java 内部静态类_静态内部类特点

内部类有以下几个主要的特点:

第一,内部类可以访问其所在类的属性(包括所在类的私有属性),内部类创建自身对象需要先创建其所在类的对象,看一个例子:Java 内部静态类_静态内部类特点

第二,可以定义内部接口,且可以定义另外一个内部类实现这个内部接口,看一个例子:Java 内部静态类_静态内部类特点

第三,可以在方法体内定义一个内部类,方法体内的内部类可以完成一个基于虚方法形式的回调操作,看一个例子:Java 内部静态类_静态内部类特点

第四,内部类不能定义static元素,看一个例子:Java 内部静态类_静态内部类特点

第五,内部类可以多嵌套,看一个例子:Java 内部静态类_静态内部类特点

static内部类是内部类中一个比较特殊的情况,Java文档中是这样描述static内部类的:一旦内部类使用static修饰,那么此时这个内部类就升级为顶级类。

也就是说,除了写在一个类的内部以外,static内部类具备所有外部类的特性,看一个例子:Java 内部静态类_静态内部类特点

通过这个例子我们发现,static内部类不仅可以在内部定义static元素,而且在构建对象的时候也可以一次完成。从某种意义上说,static内部类已经不算是严格意义上的内部类了。

与static内部类不同,内部接口自动具备静态属性,也就是说,普通类是可以直接实现内部接口的,看一个例子:

Java 内部静态类_静态内部类特点

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/183066.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • MySQL与php时间戳与日期格式的相互转换[通俗易懂]

    MySQL与php时间戳与日期格式的相互转换[通俗易懂]文章来自:源码在线https://www.shengli.me/php/336.html  

  • QTreeWidget讲解及节点操作

    QTreeWidget讲解及节点操作关于Qt的节点操作,也就是QTreeWidget类的操作。先看我的效果图!   具体实现如下!构造函数中写事件!connect(ui->treeWidget,SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)),      this,SLOT(showSelecteddataba

  • MPP架构概念_体系架构是什么意思

    MPP架构概念_体系架构是什么意思MPP架构概念1.什么是MPPMPP(MassivelyParallelProcessing),即大规模并行处理。什么是并行处理?在数据库集群中,首先每个节点都有独立的磁盘存储系统和内存系统,其次业务数据根据数据库模型和应用特点划分到各个节点上,MPP是将任务并行的分散到多个服务器和节点上,在每个节点上计算完成后,将各自部分的结果汇总在一起得到最终的结果。什么是大规模?每台数据节点通过专用网络或者商业通用网络互相连接,彼此协同计算,作为整体提供数据库服务。整个集群称为非共享数据库集群,非

    2022年10月27日
  • TCP和UDP的区别是什么_socket tcp udp区别

    TCP和UDP的区别是什么_socket tcp udp区别TCP/IP协议栈主要分为四层:应用层、传输层、网络层、数据链路层,每层都有相应的协议,如下图IP:网络层协议;(高速公路)TCP和UDP:传输层协议;(卡车)HTTP:应用层协议;(货物)。HTTP(超文本传输协议)是利用TCP在两台电脑(通常是Web服务器和客户端)之间传输信息的协议。客户端使用Web浏览器发起HTTP请求给Web服务器,Web服务器发送被请求的信息给客户端。SOCKET:套

  • 关于计算机病毒的试题,计算机病毒测试题.doc

    关于计算机病毒的试题,计算机病毒测试题.doc计算机病毒1.下列叙述中,正确的一条是______。A、Word文档不会带计算机病毒B、计算机病毒具有自我复制的能力,能迅速扩散到其他程序上C、清除计算机病毒的最简单的办法是删除所有感染了病毒的文件D、计算机杀病毒软件可以查出和清除任何已知或未知的病毒2.下列关于计算机病毒知识的叙述中,正确的一条是______。A、反病毒软件可以查、杀任何种类的病毒B、计算机病毒是一种被破坏了的程序C、…

  • CefSharp之二–如何看懂demo中的例子,以及按照例子进行开发「建议收藏」

    CefSharp之二–如何看懂demo中的例子,以及按照例子进行开发「建议收藏」CefSharp是做什么用的?请看前一篇文章:怎么用c#编写浏览器或者执行javascript代码?之后就是如何开发了。这个CefSharp最坑的是,还早不到文档,只能看着官方给的例子开发。项目地址那么就可以看到,带有example的都是例子。我给大家举2个例子。1.事件添加:我想让我的程序出了网页上的js代码,再额外的执行我自己写的js,怎么办呢?InitializeCom

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号