首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
山间木匠
掘友等级
获得徽章 15
动态
文章
专栏
沸点
收藏集
关注
作品
赞
63
文章 31
沸点 32
赞
63
返回
|
搜索文章
最新
热门
【Java面试系列】Java 基础常问面试题
用则可。性能较高,所以单片机、嵌入式开发等一般采用面向过程开发。 面向对象:是把构成问题的事务分解成各个对象,而建立对象的目的也不是为了完成一个个步骤,而是为了描述某个事物在解决整个问题的过程中所发生的行为。面向对象有封装、继承、多态的特性,所以易维护、易复用、易扩展。可以设计…
【JVM系统学习之路】常见垃圾回收器
垃圾收集器没有在规范中进行过多的规定,可以由不同的厂商、不同版本的 JVM 来实现。 由于 JDK 的版本处于高速迭代过程中,因此 Java 发展至今已经衍生了众多的 GC 版本。 从不同角度分析垃圾收集器,可以将 GC 分为不同的类型。 垃圾回收线程数,可以分为串行垃圾回收器…
【JVM系统学习之路】垃圾回收相关概念
在默认情况下,通过 system.gc() 或者 Runtime.getRuntime().gc() 的调用,会显式触发FullGC,同时对老年代和新生代进行回收,尝试释放被丢弃对象占用的内存。然而 system.gc() 调用附带一个免责声明,无法保证对垃圾收集器的调用。(不…
【JVM系统学习之路】StringTable
String 实现了 Serializable 接口:表示字符串是支持序列化的。实现了 Comparable 接口:表示 string 可以比较大小 string 在 jdk8 及以前内部定义了 final char[] value 用于存储字符串数据。JDK9 时改为 byt…
【JVM系统学习之路】对象的实例化内存布局与访问定位
虚拟机遇到一条 new 指令,首先去检查这个指令的参数能否在 Metaspace 的常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已经被加载,解析和初始化。(即判断类元信息是否存在)。如果没有,那么在双亲委派模式下,使用当前类加载器以 ClassLoader …
【JVM系统学习之路】看懂方法区
方法区(Method Area) 与Java堆一样,是各个线程共享的内存区域,它用于存储已被虚拟机加载的类型信息、常量、静态变量、即时编译器编译后的代码缓存等数据。虽然《Java虚拟机规范》中把方法区描述为堆的一个逻辑部分,但是它却有一个别名叫作“非堆”(Non-Heap),目…
【JVM系统学习之路】 神奇的 JAVA 堆,难学会?
..... 堆针对一个 JVM 进程来说是唯一的,也就是一个进程只有一个JVM,但是进程包含多个线程,他们是共享同一堆空间的。 一个JVM实例只存在一个堆内存,堆也是 Java 内存管理的核心区域。 Java 堆区在 JVM 启动的时候即被创建,其空间大小也就确定了。是 JVM…
【JVM系统学习之路】初步了解本地方法接口和本地方法栈
本地方法栈(Native Method Stacks)与虚拟机栈所发挥的作用是非常相似的,其区别只是虚拟机栈为虚拟机执行Java方法(也就是字节码)服务,而本地方法栈则是为虚拟机使用到的本地(Native)方法服务。 《Java虚拟机规范》对本地方法栈中方法使用的语言、使用方式…
【JVM系统学习之路】JAVA 虚拟机栈
由于跨平台性的设计,Java的指令都是根据栈来设计的。不同平台 CPU 架构不同,所以不能设计为基于寄存器的。 优点是跨平台,指令集小,编译器容易实现,缺点是性能下降,实现同样的功能需要更多的指令。 栈解决程序的运行问题,即程序如何执行,或者说如何处理数据。 堆解决的是数据存储…
【JVM系统学习之路】运行时数据区概述和程序计数器
本篇将 运行时数据区概述及线程 和 程序计数器 的知识点由于不是很多所以就一起梳理,也是为后续学习的知识点做一个铺垫。 运行时数据区,它是在类加载完成后的阶段,如果对类加载不是很熟悉的小伙伴,可以看我上一篇文章。 内存是非常重要的系统资源,是硬盘和 CPU 的中间仓库及桥梁,承…
下一页
个人成就
文章被点赞
168
文章被阅读
32,960
掘力值
1,222
关注了
69
关注者
132
收藏集
0
关注标签
24
加入于
2018-09-11