![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java底层原理
有人把我昵称抢了
路在脚下,只要你敢迈出脚步
展开
-
Java 底层原理 —— 浅谈JAVA数字的二进制实现
以前一直以为 -1的二进制表示是 1000 0000 0000 0000 0000 0000 0000 0001,错,大错特错,so,需要整理下,具体下文讲!!! 简单来说,整数按照位数直接存储,小数按照科学计数法存储。 一、不同进制数字的定义 int num = 1; //10进制数字定义 int num1 = 0xA; //16进制数字定义 int num2 = 017; //8进制...原创 2019-02-23 11:14:05 · 380 阅读 · 0 评论 -
Java 底层原理 —— 浅谈JAVA线程池(源码解析)
线程池(ThreadPoolExecutor)是作为一个统一管理调度线程的机制而出现。线程池中的线程数量在初始化时定义,线程执行完成并不进行销毁,所以线程池的优点显而易见: 1、并不会因为线程创建太多而导致内存泄漏; 2、节省过多的线程的创建和销毁而产生的时间和空间上的花销。 从而可以看出如果程序需要大量的线程去工作的时候,线程池才有存在的意义。。。。。。 一、线程池工作流程(根据方...原创 2019-02-28 11:36:03 · 253 阅读 · 0 评论 -
Java底层原理 —— 死循环for(;;)与while(true)的区别
事实证明某些编译器编译的代码两个死循环没有任何差别。 Look: IDEA中测试代码: public class TestLoop { @Test public void testFor(){ for(;;){ System.out.println("testLoop"); } } @Test ...原创 2019-03-11 17:36:05 · 1329 阅读 · 0 评论 -
Java底层原理 —— Java中volatile关键字底层实现原理
前言 volatile关键字在Java中多线程编程中作为必不可少的关键字,它的作用和原理你知道多少?在我们线程之间通信有很多种方式,它主要是作用在什么方式中呢?在这种通信方式中它是通过什么方式来实现线程之间的数据安全呢?volatile在CPU执行多个线程中占有什么样的角色? 一篇文章和小伙伴一起探索volatile为什么能对我们的线程安全有帮助。看看它是站在哪位巨人的肩膀上的。 多线程内存模型 在一个进程启动之后系统会为这个系统分配一篇固定的内存空间作为共享内存。进程中每个线程创建之后会获得一原创 2020-07-13 12:03:15 · 1919 阅读 · 0 评论