内部类与静态内部类的区别_禁止序列化非静态类的内部类

内部类与静态内部类的区别_禁止序列化非静态类的内部类    如果一个类中定义了静态成员变量和静态方法,那么静态方法可以访问静态成员变量,而无法访问非静态成员变量,并且静态成员变量和静态方法是随着类的加载而加载、非静态成员变量和方法的声明周期是由对象的声明周期控制的。    静态内部类和非静态内部类同静态方法和非静态方法类似。为什么要使用内部类 &n…

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

Jetbrains全系列IDE稳定放心使用

静态内部类和非静态内部类的区别

主要区别有三点:定义、访问和声明

  • 定义

    • 静态内部类中可以定义类变量、类方法、常量、成员变量和方法;非静态内部类只能定义常量、成员变量和方法
  • 访问

    • 静态内部类只能访问外部类的静态成员变量和静态方法,并且不能引用外部类的对象(this);非静态内部类可以访问外部类的所有成员和方法
  • 声明

    • 声明静态内部类时,不依赖于外部类对象;声明非静态内部类时,依赖于外部类对象
# 静态内部类
OutClass.InnerClass innerClass =  new OutClass.InnerClass();

# 非静态内部类
OutClass.InnerClass innerClass = new OutClass().new InnerClass();

内部类使用技巧

在这里插入图片描述

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183226.html原文链接:https://javaforall.net

(0)
上一篇 2022年10月11日 上午11:16
下一篇 2022年10月11日 上午11:16


相关推荐

  • zabbix===》使用模板监控nginx、php-fpm、redis「建议收藏」

    zabbix===》使用模板监控nginx、php-fpm、redis「建议收藏」一、使用模板监控nginx1.下载nginx(要监控的主机也就是客户端)#1.有CentOS-Base.repo和epel.repo这两个源就可以直接yum下载nginx[root@db01~]#cd/etc/yum.repos.d/[root@db01yum.repos.d]#ll总用量16-rw-r–r–.1rootroot252311月1803:23CentOS-Base.repo-rw-r–r–.1rootroot66411月1803

    2022年6月5日
    35
  • Silverlight学习网站[通俗易懂]

    Silverlight学习网站[通俗易懂]http://silverlight.cn/

    2022年10月10日
    4
  • 配置iptables

    配置iptables

    2021年5月12日
    130
  • java友元类_友元实例:友元类及友元函数

    java友元类_友元实例:友元类及友元函数学习了 c 这么久 一直没有对友元进行了解 据说友元不是特别好用 据说 不是我说的 因此直到今天才去了解 其实友元确实不是很常用 但友元功能确实很实用 它不但能够释放类中的非公有成员 同时还能保证了类的封装性 用户可以有选择为具体的类或函数赋予 通行证 还是比较灵活的 比如 某个类去访问另一个类的私有成成员 或者一个函数去访问某个类的私有成员等等 都可以使用友元来实现 下面就友元做了两个小例子

    2026年3月17日
    2
  • 玩转OpenClaw|云上OpenClaw(Clawdbot)快速接入Discord指南

    玩转OpenClaw|云上OpenClaw(Clawdbot)快速接入Discord指南

    2026年3月13日
    2
  • 在PyCharm中集成Vue开发

    在PyCharm中集成Vue开发在 PyCharm 中集成 Vue 开发出发点版本选择配置参数关联准备最终效果出发点 Vue 是目前国内较为流行前端开发工具 Python 是目前较为热门的开发语言 如果进行全栈开发 有多种开发形式 其中一种就是前端用 Vue 后端用 Python 通过 PyCharm 来达到建立全栈项目管理的目标 版本选择默认情况下 PyCharm 是支持 Python 开发的 如果需要做相应的 Vue 开发 需要选择特定的 PyCharm 版本 目前 在官方 PyCharm 的地址 https www jetbrains com pycharm

    2026年3月27日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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