java的静态与非静态 及其代码演示示例

2023-11-16

静态与非静态的概念
运行Java应用程序时,在实际的代码运行之前的一个步骤是加载类,具体点说,在Java SE 8的JVM中,需要先把类加载到Metaspace。如果类中有静态成员,加载类时会在heap中为其分配空间,此空间是属于类的。类中的非静态成员(实例成员)是和类的对象绑定的,它们属于对象在heap中的空间。
静态成员不能访问非静态成员,因为静态成员在类加载完成后已经存在于heap中了,但是如果没创建对象的话非静态成员是不存在的,所以在代码中有引用时会发生编译错误。反过来说,非静态成员可以访问静态成员,因为当非静态成员存在于heap中时,静态成员肯定已经存在于heap中了。
具体分析一个例子,内部类(inner class)不能定义静态成员。是因为内部类是非静态的,它的外部类加载时不会为它在heap中分配空间,所以无法为它的静态成员安排空间,也就不能定义静态成员。
Java静态代码块与非静态代码块

***静态代码块,格式是 static{ }***,随着类的加载而加载,且只执行一次。 在程序中,执行的优先级最高。
***非静态代码块,格式是{ }***,在创建对象的时候运行(即new一个对象的时候),每创建一次对象就执行一次。
示例代码:
在这里插入图片描述
结果演示:在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java的静态与非静态 及其代码演示示例 的相关文章

  • 双系统 Ubuntu grub启动项中 没有Windows的解决

    目标 从ubuntu的grub进入win10系统 实施 以下操作在Ubuntu系统中进行 终端依次执行下面命令 sudo grub install dev sda sudo chmod x etc grub d 30 os prober s
  • 导致项目失败常见的原因有哪些

    一 规划工作做得不细 或缺少灵活性 项目计划始终是项目开始前的热点讨论话题 但是在实际项目进行中仍会出现问题 因此在做好计划之后 在项目实施中项目经理还需要根据项目实际情况做适当的调整 项目经理可以通过进度猫甘特图制作项目计划 调整增加项目
  • 另类的唯品会和得物比价

    目前得物h5和小程序防爬弄得采集数据很费劲 另辟蹊径做了一款通过模拟器和商家后台方式采集数据的方式 目前实现了跟唯品会的比价 运行界面如下 输入品牌名称 点击 开始 表格中左边依次显示唯品会采集的数据 右边会根据采集模式的不同 从安卓模拟器
  • inux字符驱动之read、write部分

    本期主题 linux字符驱动之read write部分 往期链接 linux设备驱动中的并发 linux设备驱动中的编译乱序和执行乱序 linux设备驱动之内核模块 linux字符驱动 linux字符驱动之ioctl部分 linux字符驱动
  • 把手伸向大数据平台的云原生,是如何将大数据平台迁移至K8s上的?

    我们正身处数据大爆炸的时代 据IDC数据显示 仅在2022年 人类就将创造超过97ZB的数据 要知道截至2012年 人类生产的所有印刷材料的数据量为200PB 仅为2022年一年所创造数据量的50万分之一 据预测 中国数据量规模将从2022
  • TMS运输管理系统,对车辆管理、物流运输、效率提升有哪些优势?

    TMS Transport Management System 运输管理系统 其主要功能是对物流中的运输环节进行管理 此系统适用于运输公司 各企业下面的运输队等 系统对车辆 驾驶员 线路 运输方式等进行全面管理 通过系统调度管理 报表分析统
  • TypeScript学习笔记(三) - 方法

    本篇将介绍在TypeScript里如何定义和使用方法 一 方法标准声明和使用 1 方法声明 2 function func x number y number number 3 return x y 4 在TypeScript里 方法声明可
  • INSTALL_FAILED_INVALID_APK: /data/app/vmdl1735842778.tmp/11_app-debug signatures are inconsistent

    坑 背景 这两天无聊想整合一下SDK和Gradle里的东西 然后手贱 整出来一个错误 安装apk报错 INSTALL FAILED INVALID APK data app vmdl1735842778 tmp 11 app debug s
  • 按指定条件从C++11 map中删除元素

    问题 无法使用remove if配合map容器的erase操作按指定条件从map容器删除元素 C 11 解决方案 可以使用一下函数实现这个需求 template
  • pytorchnp.transpose(npimg, (1, 2, 0))

    最近看pytorch的一个代码 结果中间有一句还是看不太懂 最后过了一些阵子才看懂 在此Mark一下 1 代码如下 def imshow img text should save False npimg img numpy 将torch F
  • css实现图片旋转

    一 css实现图片旋转90度 icon moz transform rotate 90deg webkit transform rotate 90deg 二 水平翻转 icon color f64e78 font size 20px dis
  • 轨迹数据

    如何通过轨迹相似性度量方法 发现新冠易感人群 轨迹作为一种时空数据 指的是某物体在空间中的移动路径 通常表示为GPS点的序列 例如tr
  • 计算机的默认登录账户,win10如何设置默认登录账户_win10电脑设置默认账户登录的两种方法...

    我们在使用电脑时为了保护电脑资料的安全 一般会进行密码登录设置 但是有使用win1064位正式版系统的用户想要在使用电脑的时候自己的账户可以进行自动登录 而其他的账户保持原来的登录方式 那win10如何设置默认登录账户呢 下面小编就来为大家
  • python中__name__和__main__

    在学习python的时候 会经常看到这样的一句话 if name main 那么这句话是什么意思呢 首先要解释一下python文件的两种使用方式 1 直接运行 就是直接运行 py文件 2 模块导入 就是被当成模块导入到其他python文件中
  • ssh 远程登陆指定端口

    ssh 到指定端口 ssh p xx user ip xx 为 端口号 user为用户名 ip为要登陆的ip SSH 原理及远程登录 http www ruanyifeng com blog 2011 12 ssh remote login
  • 基于java的个人博客系统的设计与实现

    源码下载 https wwa lanzous com iH3N7mjya2h 更多源码 http byamd xyz 文件目录 运行步骤 导入数据库 导入idea 修改数据库密码 效果
  • three.js物体纹理及其常用属性介绍

    一 Three中的纹理和材质介绍 THREE中的纹理和材质是用来渲染3D场景中的物体表面的 纹理贴图定义物体表面的颜色和外观 而材质则定义物体表面如何反射光线 纹理可以使用多种类型的图像文件 包括JPEG PNG GIF等 纹理可以是简单的
  • Python运维开发工程师养成记(python continue语句)

    图示 案例 下节分享python pass语句 链接 https ke qq com course 4300856 tuin d8aedf68
  • python常见相关组件汇总(个人学习)

    目录 1 生成6位数字随机验证码 2 md5加密 3 生成唯一token 4 发送手机验证码 实现逻辑 5 生成二维码 6 微信群发 7 微信自动回复 8 提取Django中model中的字段名变成字典 列表 9 数据库中给表创建数据 10
  • 11、Seata AT+SpringCloud+MyBatisPlus+Nacos进行分布式事务操作

    具体请看 http blog shangsw com articles 2020 03 28 1585382453622 html

随机推荐

  • Unity通用框架搭建(八)—— 消息事件封装

    在游戏开发中 消息事件通过委托实现 实际开发中 经常会遇到界面之间 玩家之间的相互通信 本文实现的消息事件封装采用的时监听和分发机制 它主要运用在逻辑判断 减少程序之间的耦合度 而且使用起来非常方便 监听服务器消息也可以运用事件监听机制 收
  • 怎么在matlab里分析房价,MATLAB线性回归算法浅析赤(chǐ)峰房价

    每日一句 房子不是你想买想买就能买 基础介绍 线性回归算法是处理回归问题的常用方法 下面就线性回归算法来做一个简单的模型 通过走势模拟房子售价 通过数据样本的基本绘图 可以知道某个现象是不是一个线性的分布过程 并且按一次线性方程分布 那么就
  • 关于Vue

    vue js 与vue runtime xxx js的区别 1 vue js是完整版的Vue 包含 核心功能 模板解析器 2 vue runtihe xxx js是运行版的Vue 只包含 核心功能 没有模板解析器 因为vue runtime
  • 面向对象基本思想概述

    面向对象的基本思想 面向对象是一种新兴的程序设计方法 或者是一种新的程序设计规范 paradigm 其基本思想是使用对象 类 继承 封装 消息等基本概念来进行程序设计 从现实世界中客观存在的事物 即对象 出发来构造软件系统 并且在系统构造中
  • Typora图床配置详细教程

    Typora图床配置详细教程 从读研开始 慢慢有了写博客的习惯 刚开始直接在csdn上写 后来还是觉得不太方便 有时候上网课记笔记还要另外专门打开一个网页来回切换 于是就改用Typora 不得不说真香 不幸的是 Typora后来走上了收费的
  • JavaScript基础标准库总结——(1)

    一标准库对象 一共9个 1 Object 键值对混合对象 2 Array 数组 String 字符串 3 String 字符串 4 NUmber 数字 5 Boolean 布尔值 6 Math 数学 7 Date 日期 8 JSON 9 R
  • TailwindCSS 3.0 (二) 设置背景颜色和背景图片的方法

    设置背景颜色 background color 1 背景颜色 Background Color 基础用法 透明度 自定义主题颜色 其他用法 2 渐变颜色 基础用法 渐变色标 基础用法 其他用法 3 背景图片 Background Image
  • VisualStudio代码格式化方法

    有时我们从其他地方复制过来的代码当粘贴到VS中时 代码缩进的格式已经没有了 这样看代码十分不直观 自己重新排版又太慢 还好VS中已经为我们提供了自动格式化的功能 下面是格式化的几种方法 VS2008即以后的各个版本通用 1 选中需要格式化的
  • java对象复制_Java对象的复制三种方式

    Java对象的复制三种方式 概述 在实际编程过程中 我们常常要遇到这种情况 有一个对象A 在某一时刻A中已经包含了一些有效值 此时可能 会需要一个和A完全相同新对象B 并且此后对B任何改动都不会影响到A中的值 也就是说 A与B是两个独立的对
  • 让你久等了《开源安全运维平台OSSIM疑难解析--入门篇》正式出版

    2019年暑期 众所期待的新书 开源安全运维平台OSSIM疑难解析 入门篇 由人民邮电出版社正式出版发行 此书从立意到付梓 历时超过两年 经过数十次大修 历经曲折与艰辛 希望为大家代奉献一本好书 愿这本书能陪伴OSSIM用户一起进步一起成长
  • 结构化设计和模块设计

    结构化设计 结构化设计包括架构设计 接口设计 数据设计和过程设计等任务 它是一种面向数据流的设计方法 是以结构化分析阶段所产生的成果为基础 进一步自顶而下 逐步求精和模块化的过程 1 概要设计与详细设计的主要任务 概要设计阶段的主要任务是设
  • Java 15中的隐藏类是咋回事?

    Java 从1 1 版就有匿名类 但是 匿名类并不是匿名的 你不需要为它们命名 它们是由 Java 编译器命名的 如果你熟悉命令javap 则可以 反汇编 JAR 文件并查看编译器为匿名类生成的名称 Java 15 引入了没有名称的隐藏类
  • ModuleNotFoundError: No module named ‘rosbag‘

    1 ModuleNotFoundError No module named rosbag File opt ros kinetic lib python2 7 dist packages roslib launcher py line 42
  • 数字图像处理中一元函数f(x)的二阶导数=f(x+1)+f(x-1)-2f(x)的由来

    在 为什么说数字图像的一阶微分为f x 1 f x 介绍了数字图像处理中一元函数的一阶导数的由来 该一阶导数为 在该书中 同时定义了一元函数f x 其二阶导数的基本定义为 关于这个推导其中有点点小技巧 式3 6 1也可以表述为 f x f
  • C++基础——初始化列表

    目录 一 初始化列表 1 列表格式 情况1 成员变量中有const成员 但列表处成员不被初始化时 情况1 成员变量中有const成员 给缺省值时 情况1 成员变量中有const成员 列表处成员不仅初始化 还有缺省值 情况2 成员是自定义类型
  • WinCE 下 RAS 拨号连接的建立和拨号过程

    在 CE 下如果系统没有建立拨号网络 要实现上网功能时 就需要通过代码来实现建立拨号网络 拨号实现上网的过程 以下代码中的参数和拨号所用数值 都是电信 EVDO 的配置 如果换 GSM 或 WCDMA 时 请相应修改 cpp view pl
  • PHP学习笔记 Win平台下PHP开发环境的搭建

    Win平台下PHP开发环境的搭建 本文参考了PHP官方文档 http php net manual zh install windows iis7 php 写成 如果需要了解详细信息 请直接参考PHP官方文档 下载并配置PHP 下载PHP
  • 第十四届蓝桥杯模拟赛(第三期)试题与题解 C++

    目录 一 填空题 一 最小的十六进制 答案 2730 二 Excel的列 答案 BYT 三 相等日期 答案 70910 四 多少种取法 答案 189 五 最大连通分块 答案 148 二 编程题 一 哪一天 二 信号覆盖 三 清理水草 四 最
  • 关于我写了三万字博客后悔了好久这件事之第二个三万字GUI(swing)

    目录 简介 使用Swing的优势 Swing的特征 Swing基本组件的用法 Swing组件层次 AWT组件的Swing实现 简单了解swing JFrame 弹窗 标签 面板 按钮 3 6 列表 3 7 文本框 JTree TreeMod
  • java的静态与非静态 及其代码演示示例

    静态与非静态的概念 运行Java应用程序时 在实际的代码运行之前的一个步骤是加载类 具体点说 在Java SE 8的JVM中 需要先把类加载到Metaspace 如果类中有静态成员 加载类时会在heap中为其分配空间 此空间是属于类的 类中