后端开发学习(一)

JVM虚拟机

包括运行时数据区(内存模型)类装载子系统和字节码执行引擎。

内存模型

包括栈、堆、方法区、本地方法栈和程序计数器
main线程开始运行,就会从栈中给一部分给main线程存放局部变量。

  • 栈帧:给线程运行的方法分配一块专属的内存区域,一个栈帧对应一个方法。
    1. 局部变量表:存放变量
    2. 操作数栈:把常数先存入,然后再弹出赋值到局部变量表中的变量。是临时的
    3. 动态链接:存放方法入口的内存地址,可以找到方法进而执行方法下面的程序。
    4. 方法出口:存放方法的返回地址,main方法可以继续向下执行。

程序计数器:用来表示当前程序存放的位置,因为Java是多线程执行的,便于有些线程挂起后重新执行找到位置

堆:局部变量很多都是对象类型的,那么它的值是放到堆里面的。局部变量表里面存放的是内存地址,引用指针,所以栈和堆的关系就是引用的关系。

方法区:常量+静态变量+类信息(也是存放在堆中对象的内存地址)

本地方法栈:是本地方法在执行过程中需要用的内存空间

常见java虚拟机的面试题

能否对JVM调优?让其几乎不发生full jc?
可以,把 年轻态调大一些

minor gc 垃圾收集,回收年轻
full gc 全部回收
调优 就是减少gc的次数
对象头里有分代年龄

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java后端开发学习是一个很好的选择!以下是一些步骤和资源,可以帮助你开始学习Java后端开发: 1. 学习Java语言基础:了解Java的基本语法、数据类型、控制流程等。你可以参考一些经典的Java教材或者在线教程。 2. 学习面向对象编程(OOP):Java是一门面向对象的编程语言,理解OOP的概念和原则对于后端开发至关重要。 3. 掌握Java核心库:学习Java的核心库,如集合框架、IO操作、多线程等。这些是Java后端开发中常用的工具和技术。 4. 学习数据库和SQL:后端开发经常需要与数据库进行交互,学习关系型数据库(如MySQL)和SQL语言是必备的技能。 5. 学习常用的Java后端框架:熟悉一些常用的Java后端框架,如Spring、Spring Boot等。这些框架可以帮助你快速开发高效的后端应用。 6. 实践项目:通过实践项目来巩固所学知识,可以参与开源项目或者自己构建一些小型项目。 7. 持续学习和保持实践:后端开发是一个不断进步的领域,不断学习和保持实践是提升自己的关键。 此外,以下是一些学习Java后端开发的资源推荐: - 免费在线教程:Oracle官方的Java教程、W3School的Java教程等。 - 书籍:《Effective Java》、《Java编程思想》等经典的Java编程书籍。 - 在线课程:Coursera、Udemy、慕课网等平台上都有很多Java后端开发的在线课程。 希望这些信息对你有帮助!祝你在Java后端开发学习中取得成功!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值