Java基础概念

自动装箱

java 复制代码
Integer i = 10;  //装箱
int n = i;   //拆箱
  • 普通数据类型‌:直接在栈内存中分配空间,存储的是具体的值。
  • 包装类‌:作为对象在堆内存中分配空间。包装类实际上是对普通数据类型的封装,每个包装类都包含了对应的数据类型的值,并且包含一些方法(如类型转换、比较等)‌1。

静态变量有什么作用?

静态变量也就是被 static 关键字修饰的变量。它可以被类的所有实例共享,无论一个类创建了多少个对象,它们都共享同一份静态变量。也就是说,静态变量只会被分配一次内存,即使创建多个对象,这样可以节省内存。

GC,Java内存区域

顾名思义就是释放垃圾占用的空间,防止内存泄露

Minor GC 、 Major GC 、 Full GC ?

新生代内存不够用时候发生Minor GC 也叫 Yong GC ,老年代内存不够的时候发生 Major GC, Minor GC 相比 Major GC 更频繁,回收速度也更快。 还有一种GC 负责整个新生代 + 老年代的回收称为 Full GC。

G1垃圾收集器是JAVA7引入的一款垃圾收集器,软实时是指G1允许设置一个限定值,G1会努力控制每一次GC所造成的停顿都在限定时间之内,但是并不保证每一次GC造成的停顿都能满足要求。停顿时间的限定可以通过-XX:MaxGCPauseMillis参数设置

CMS是一种更为古老的垃圾回收算法。

无法被垃圾回收的内存,称为内存泄漏

ZGC为更高版本Java使用的垃圾回收器,Java14可使用。

相关推荐
隐积1 小时前
3.1.7.Qt容器大家族(3):QVariant——万能盒子
开发语言·qt
都叫我大帅哥4 小时前
Java JJWT 完全指南:从入门到生产级实践
java
名字还没想好☜4 小时前
Next.js ‘use client‘ 到底加在哪:Server/Client Components 边界与常见报错
开发语言·前端·javascript·react·next.js
初级代码游戏5 小时前
iOS开发 Swift 速记1:变量和基本数据类型
开发语言·ios·swift
前端开发张小七5 小时前
Java 学习笔记 · 第一课:基础语法与核心概念
java·后端
酷在前行6 小时前
【R生态】PERMANOVA 进阶实战:距离选择、PERMDISP、两两比较与受限置换(保姆级教程)
开发语言·r语言
ThsPool6 小时前
【ENVI二次开发学习整理 04】ENVI功能扩展与二次开发
java·前端·javascript
cxr8286 小时前
Graphify vs GitNexus vs CodeGraph — 三工具架构深度对比
开发语言·架构·知识图谱
赤壁小虾6 小时前
【渲染流水线】[逐片元阶段]-[透明度测试]以UnityURP为例
java·前端·数据库
废弃的小码农7 小时前
功能测试--Day07--Python编程基础
开发语言·python