mirror of
https://github.com/Snailclimb/JavaGuide
synced 2025-07-28 12:22:17 +08:00
Compare commits
7 Commits
d68d8bcebf
...
61060866ee
Author | SHA1 | Date | |
---|---|---|---|
|
61060866ee | ||
|
e7ba062dac | ||
|
4e10294d59 | ||
|
bb2f53a4b9 | ||
|
569e317d06 | ||
|
a8f697e854 | ||
|
e396e84178 |
@ -538,18 +538,20 @@ Java 中有 8 种基本数据类型,分别为:
|
||||
|
||||
这八种基本类型都有对应的包装类分别为:`Byte`、`Short`、`Integer`、`Long`、`Float`、`Double`、`Character`、`Boolean` 。
|
||||
|
||||
### 局部类型和包装类型的区别?
|
||||
### 基本类型和包装类型的区别?
|
||||
|
||||
- 包装类型不赋值就是 `null` ,而基本类型有默认值且不是 `null`。
|
||||
- 包装类型可用于泛型,而基本类型不可以。
|
||||
- 基本数据类型的局部变量存放在 Java 虚拟机栈中的局部变量表中,基本数据类型的成员变量(未被 `static` 修饰 )存放在 Java 虚拟机的堆中。包装类型属于对象类型,我们知道对象实例都存在于堆中。
|
||||
- 基本数据类型的局部变量存放在 Java 虚拟机栈中的局部变量表中,基本数据类型的成员变量(未被 `static` 修饰 )存放在 Java 虚拟机的堆中。包装类型属于对象类型,我们知道几乎所有对象实例都存在于堆中。
|
||||
- 相比于对象类型, 基本数据类型占用的空间非常小。
|
||||
|
||||
⚠️注意 : **基本数据类型存放在栈中是一个常见的误区!** 基本数据类型的成员变量如果没有被 `static` 修饰的话,就存放在堆中。
|
||||
**为什么说是几乎所有对象实例呢?** 这是因为 HotSpot 虚拟机引入了 JIT 优化之后,会对对象进行逃逸分析,如果发现某一个对象并没有逃逸到方法外部,那么就可能通过标量替换来实现栈上分配,而避免堆上分配内存
|
||||
|
||||
⚠️注意 : **基本数据类型存放在栈中是一个常见的误区!** 基本数据类型的成员变量如果没有被 `static` 修饰的话(不建议这么使用,应该要使用基本数据类型对应的包装类型),就存放在堆中。
|
||||
|
||||
```java
|
||||
class BasicTypeVar{
|
||||
private int x;
|
||||
private int x;
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -854,7 +854,7 @@ Wed Nov 13 13:40:43 CST 2019::pool-1-thread-5
|
||||
>
|
||||
> Linux 相比与其他操作系统(包括其他类 Unix 系统)有很多的优点,其中有一项就是,其上下文切换和模式切换的时间消耗非常少。
|
||||
|
||||
**类比于实现世界中的人类通过合作做某件事情,我们可以肯定的一点是线程池大小设置过大或者过小都会有问题,合适的才是最好。**
|
||||
**类比于现实世界中的人类通过合作做某件事情,我们可以肯定的一点是线程池大小设置过大或者过小都会有问题,合适的才是最好。**
|
||||
|
||||
**如果我们设置的线程池数量太小的话,如果同一时间有大量任务/请求需要处理,可能会导致大量的请求/任务在任务队列中排队等待执行,甚至会出现任务队列满了之后任务/请求无法处理的情况,或者大量任务堆积在任务队列导致 OOM。这样很明显是有问题的! CPU 根本没有得到充分利用。**
|
||||
|
||||
|
@ -79,7 +79,6 @@ Java 堆是垃圾收集器管理的主要区域,因此也被称作**GC 堆(G
|
||||
-XX:+PrintGCDetails
|
||||
-XX:TargetSurvivorRatio=60
|
||||
-XX:+PrintTenuringDistribution
|
||||
-XX:+PrintGCDetails
|
||||
-XX:+PrintGCDateStamps
|
||||
-XX:MaxTenuringThreshold=3
|
||||
-XX:+UseConcMarkSweepGC
|
||||
|
Loading…
x
Reference in New Issue
Block a user