首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
JVM
订阅
西门吹雪同学
更多收藏集
微信扫码分享
微信
新浪微博
QQ
21篇文章 · 0订阅
Java泛型 - 协变与逆变如何理解,extends与super如何选择
协变、逆变、不变如何理解,什么时候用extends,什么时候用super。 要了解协变与逆变,首先要引入: 根据 Liskov替换原则,如果C是P的子类,则P可以代替C,即 P p = ne
各大框架都在使用的Unsafe类,到底有多神奇?
前言 几乎每个使用 Java开发的工具、软件基础设施、高性能开发库都在底层使用了sun.misc.Unsafe,比如Netty、Cassandra、Hadoop、Kafka等。 Unsafe类在提升J
JVM之压缩指针(CompressedOops)
对于32位机器,进程能使用的最大内存是4G。如果进程需要使用更多的内存,需要使用64位机器。 对于Java进程,在oop只有32位时,只能引用4G内存。因此,如果需要使用更大的堆内存,需要部署64位JVM。这样,oop为64位,可引用的堆内存就更大了。 注:oop(ordina…
JVM 原理与优化 (1)
如图所示,JVM包括类装载器子系统、运行时数据区、执行引擎。类装载器子系统根据给定的权限 的名来装入类型(类或者接口)。执行引擎负责执行那些包含在被装载类的方法中的指令。运行时 数据区包含方法区、堆、Java栈、PC寄存器、本地方法栈。 类装载器子系统:在JVM中负责查找并装载…
老大难的 Java ClassLoader 再不理解就老了
ClassLoader 是 Java 届最为神秘的技术之一,无数人被它伤透了脑筋,摸不清门道究竟在哪里。网上的文章也是一篇又一篇,经过本人的亲自鉴定,绝大部分内容都是在误导别人。本文我带读者彻底吃透 ClassLoader,以后其它的相关文章你们可以不必再细看了。 顾名思义,它…
JVM 如何处理未捕获异常
继之前的文章 详解JVM如何处理异常,今天再次发布一篇比较关联的文章,如题目可知,今天聊一聊在JVM中线程遇到未捕获异常的问题,其中涉及到线程如何处理未捕获异常和一些内容介绍。 未捕获异常指的是我们在方法体中没有使用try-catch捕获的异常,比如下面的例子 上面的代码很有可…
深入理解 JVM 之 JVM 内存结构
Java 虚拟机在运行 Java 程序 时,把它所管理的内存划分为若干个不同的数据区域,主要包括以下五个部分:程序计数器、Java 堆、Java 虚拟机栈、方法区和本地方法栈。 程序计数器是当前线程所执行的字节码的行号指示器,它会指出下一条将要执行的指令的地址,字节码解释器就是…
JDK是如何判断两个对象是否相同的?判断的流程是什么?
JDK 会先判断两个对象的hashCode是否相同,如果hashCode不同,则说明肯定是两个不同的对象了;如果hashCode相同再通过equals()方法进行进一步比较,如果equals方法返回true,则说明两个对象是相同的,如果equals方法返回false说明两个对象…
徒手撸一个简单的IOC
Spring框架中最经典的两个就是IOC和AOP,其中IOC(Inversion of Control)是什么呢?控制反转,简单来说就是将控制实体Bean的动作交给了Spring容器进行管理。再简单点来说就是例如之前想用一个类,必须new一个,但是使用了Spring那么直接用@…
spring aop原理 JDK动态代理和CGLIB动态代理
AOP实现的关键在于AOP框架自动创建的AOP代理。 AspectJ是静态代理的增强,采用编译时生成 AOP 代理类,因此也称为编译时增强,具有更好的性能。 Spring AOP使用的动态代理,运行时生成 AOP 代理类,所谓的动态代理就是说AOP框架不会去修改字节码,而是在内…