JAVA_4

JAVA_4

  • 一、JAVA内存总体架构
  • 二、栈的特点如下
  • 三、堆的特点如下
  • 四、方法区(又叫静态区,也是堆)特点如下
  • 五、this的本质

一、JAVA内存总体架构

  1. 多个线程里面有:程序计数器、虚拟机栈、本地方法栈
  2. 方法区:运行时常量池
  3. 堆:新生代和老生代,用于做对象的管理
  4. 直接内存和其他内存

二、栈的特点如下

  1. 栈描述的是方法执行的内存模型,每个方法被调用都会创建一个栈帧
  2. 先进后出,后进先出
  3. 栈系统自动会分配,速度快,是连续内存空间
  4. jvm为每个线程创建一个栈
  5. 栈为线程私有,不可共享

三、堆的特点如下

  1. 堆用于存储创建好的对象和数组(也是对象)
  2. 堆是一个不连续的内存空间,分配灵活,速度慢(需要查找)
  3. jvm只有一个堆,所有线程共享

四、方法区(又叫静态区,也是堆)特点如下

  1. 方法区是java虚拟机规范,可以有不同的实现,jdk8是元数据空间和堆结合起来
  2. 方法区也是堆,只是用于存储类、常量相关的信息
  3. 用来存放程序中永远不变或唯一的内容
  4. jvm只有一个方法区,所有线程共享

五、this的本质

  1. this的本质就是当前对象的地址,普通方法中指向调用该方法的对象,构造方法中指向初始化对象
  2. this可以调用重载的构造器!这种方法必须位于构造方法第一行
  3. 作为方法链式调用:通过在方法中返回"this",可以实现。这在建造者模式和流式API中很常见

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FPGA相关论文阅读

一、Achieving 100Gbps Intrusion Prevention on a Single Server 论文名称中文翻译:在单台服务器上实现100Gbps吞吐量的入侵防御检测。 文章中的Mixed-1和Norm-1 二、Distributed Password Hash Computation on Commodity Heterogeneous Programmable Platforms…

【回溯 字典树(前缀树)】212. 单词搜索 II

本文涉及知识点 回溯 字典树(前缀树) LeetCode212. 单词搜索 II 给定一个 m x n 二维字符网格 board 和一个单词(字符串)列表 words, 返回所有二维网格上的单词 。 单词必须按照字母顺序,通过 相邻的单元…

第3周 后端微服务基础架构与前端项目联调配备

第3周 后端微服务基础架构与前端项目联调配备 1. 微服务项目层次设计与Maven聚合1.1 项目层次设计1.2 父项目pom1.2.1 打包方式 1.3 创建通用 ************************************************************************************** 1. 微服务项目层次设计与Maven聚合 1.1…

电商平台遭遇DDOS、CC攻击有什么防护方案

电商平台遭遇DDOS、CC攻击有什么防护方案?在数字化浪潮的推动下,电商平台已成为现代商业的重要组成部分,为消费者提供便捷、多样的购物体验。然而,随着业务的发展,电商平台也面临着日益严峻的网络安全挑战,…

Tower for Mac:Git管理的新境界

Tower for Mac,让您的Git管理进入新境界!这款专为Mac用户打造的Git客户端,凭借其出色的性能和丰富的功能,成为众多开发者的首选工具。 Tower不仅支持常规的Git操作,如提交、推送和拉取,还提供了许多高级功能…

四、VGA项目:联合精简帧+双fifo+sobel算法 实现VGA显示

前言:该项目实际上是在很多基础的小练习上合成起来的,例如涉及到uart(rs232)的数据传输、双fifo流水线操作、VGA图像显示,本次内容在此基础上又增添了sobel算法,能实现图像的边沿监测并VGA显示。 文章目录…

简单的DbUtils工具类【精细】

目录 单条通用增删改方法 1.创建maven项目,并加载依赖 2.创建数据库连接工具类(Dbutils类) 3.创建一个执行器(SqlExecutor类) 4.通用(增,删,改)方法 1.创建方法 2.创建userInfo实体类 3.创建测试类,测试增,删&#xf…

探索数据结构:树与二叉树

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:数据结构与算法 贝蒂的主页:Betty’s blog 1. 树 1.1. 树的定义 树是一种非线性的数据结构,它是由n&a…

ORA-609频繁出现在alert.log,如何解决?

ORA-609就alertlog中比较常见的一个报错,虽然并没有太大的影响,但是频繁的出现在alert log也是很让人厌烦的事情,本文介绍如何排查解决ORA-609问题。 1.ORA-609官方定义 could not attach to incoming connection Cause Oracle process cou…

【SRC实战】前端脱敏信息泄露

挖个洞先 https://mp.weixin.qq.com/s/xnCQQCAneT21vYH8Q3OCpw “ 以下漏洞均为实验靶场,如有雷同,纯属巧合 ” 01 — 漏洞证明 一、前端脱敏,请求包泄露明文 “ 前端脱敏处理,请求包是否存在泄露? ” 1、获取验…

|Python新手小白中级教程|第二十八章:面向对象编程(类定义语法私有属性类的继承与多态)(4)

文章目录 前言一、类定义语法二、私有方法和私有属性1.私有属性2.私有方法 三、类“继承”1.初识继承2.使用super函数调用父类中构造的东西 四、类“多态”1.多态基础2.子类不同形态3.使用isinstance函数与多态结合判断类型 总结 前言 大家好,我是BoBo仔吖&#xf…

6818Linux内核开发移植

Linux内核开发移植 Linux内核版本变迁及其获得 Linux是最受欢迎的自由电脑操作系统内核, 是一个用C语言写成, 并且符合POSIX标准的类Unix操作系统 Linux是由芬兰黑客Linus Torvalds开发的, 目的是尝试在英特尔x86架构上提供自由免费的类Un…

Task Office for Mac v9.0激活版:任务管理新境界

还在为繁琐的任务管理而烦恼吗?Task Office for Mac为您带来全新的任务管理体验。简洁明了的界面设计,让您轻松上手;强大的任务管理和项目管理功能,让您轻松掌握任务进度;多用户协作功能,让团队协作更加高效…

ubuntu24.04安装ros

ubuntu24.04安装ros 踩坑 踩坑 目前安装人数比较少,没有较为详细的博客,参考官网的链接 http://docs.ros.org/en/rolling/Installation/Ubuntu-Install-Debians.html 同时在如下的一步中会找不到网址报错,此时可以参考https://blog.51cto.c…

Excel办公技巧之下拉菜单

在日常办工中,经常需在单元格中输入特定的值,此时我们可以使用下拉菜单解决,输入错误和错误值,可以一劳永逸的解决固定数据输入问题。 使用Excel下拉菜单时,它在数据输入和验证方面发挥着重要作用通过点击单元格的下拉…

学习笔记-Vue3中Hook函数

什么是Hook函数 Hook翻译过来是钩子的意思,其本质上是一组可复用的函数。简单理解来说,你能够在不同的组件中,实现相同的代码逻辑,以达到代码复用、提高维护性的效果。那为何叫’钩子’呢,我的理解是: 它可…

商业数据分析--时间序列图及趋势分析

绘制时间序列图,并指出存在什么样的状态如上两图: 可见状态:从时间序列图可以看出,这些数据存在明显的季节性波动,每年的第4季度值都最高,而第2季度值最低。同时也存在一些下降的趋势。 通过引进虚拟变量,建立多元线性回归模型。答: 通过引入虚拟变量,我们可以建立如下的…

Oracle数据库之多表查询、层次查询(五)

目录 前言 Oracle 的连接条件的类型 多表查询 1. 使用JOIN关键字 2. 使用WHERE子句进行多表查询 3. 子查询 4. EXISTS关键字 5. 集合运算 6. 注意事项: 层次查询 前言 Oracle 的连接条件的类型 等值连接不等值连接外连接自连接 多表查询 在Oracle数据…

商场学习之微服务

前言 寒假前在新电脑上配置了java环境,maven仓库,node,js,navicat,MySQL,linux,vmware等环境,创建了6个mysql数据库,77张表。 如此多的表,字段,去手写基础…

Web入门——三栏布局页面

前置知识 内外边距 内边距(padding): padding是元素边框与其内容之间的空间。也就是说,如果你给一个元素设置了内边距,这个空间会作为元素内容与元素边框之间的缓冲区域。设置内边距会使元素本身变大。例如padding:10px就创建了10像素的空间…