首页
JVM
源码阅读
Spring
Mybatis
Java
SpringBoot
集合
JUC
逆向
安卓逆向
网络渗透
计算机网络
web渗透
内网渗透
漏洞复现
其他&语言
MySQL
汇编
Linux
C/C++
Python
GO
文章归档
友情链接
造山博客
一两黄金一两风
累计撰写
118
篇文章
累计创建
41
个标签
累计收到
33
条评论
栏目
首页
JVM
源码阅读
Spring
Mybatis
Java
SpringBoot
集合
JUC
逆向
安卓逆向
网络渗透
计算机网络
web渗透
内网渗透
漏洞复现
其他&语言
MySQL
汇编
Linux
C/C++
Python
GO
文章归档
友情链接
目 录
CONTENT
以下是
Java
相关的文章
2022-11-13
JVM内存分配策略(对象动态年龄机制与空间分配担保机制)
内存分配策略(或对象提升(Promotion)规则)如果对象在Eden出生并经过第一次MinorGC后仍然存活,并且能被Survivor容纳的话,将被移动到Survivor空间中,并将对象年龄设为1。对象在Survivor区中每熬过一次MinorGC,年龄就增加1岁,当它的年龄增加到一定程度(默认为
2022-11-13
1559
0
0
Java
2022-11-13
Minor GC、Major GC与Full GC
Minor GC、Major GC与Full GCJVM在进行GC时,并非每次都对三个内存区域(新生代、老年代:方法区)一起回收的,大部分时候回收的都是指新生代。针对HotSpot VM的实现,它里面的GC按照回收区域又分为两大种类型:一种是部分收集(Partia1GC),一种是整堆收集(Fu11G
2022-11-13
1673
0
0
Java
2022-11-12
Java虚拟机栈与栈帧详解
前言栈与堆的区别栈是运行时的单位,而堆是存储的单位。即:栈解决程序的运行问题,即程序如何执行,或者说如何处理数据。堆解决的是数据存储的问题,即数据怎么放、放在哪儿。Java虚拟机栈是什么?Java虚拟机栈(Java Virtual Machine Stack),早期也叫Java栈。每个线程在创建时都
2022-11-12
1773
0
1
Java
2022-11-12
JVM架构模型
JVM架构模型Java编译器输入的指令流基本上是一种基于栈的指令集架构,另外一种指令集架构则是基于寄存器的指令集架构。具体来说:这两种架构之间的区别:基于栈式架构的特点设计和实现更简单,适用于资源受限的系统;避开了寄存器的分配难题:使用零地址指令方式分配。指令流中的指令大部分是零地址指令,其执行过程
2022-11-12
1526
0
2
Java
2022-11-09
JDK1.6到JDK1.8方法区的变化(大坑)
前言JDK1.6到JDK1.8最明显的变化就是方法区的实现问题了,所以本章也是主要描述方法区的变化从永久代到元空间方法区(jdk7中实现为永久代,jdk8中为元空间),元空间并不在虚拟机中,而是使用本地内存,它和堆在逻辑上是连续的,但在物理上是不连续的,所以也叫非堆。题外话 方法区与堆是线程间共享的
2022-11-09
1659
0
1
Java
2022-11-05
spring源码缺失spring-cglib-repack和spring-objenesis-repack问题
今天开始阅读spring源码,当用idea构建了spring源码后,发现缺失spring-cglib-repack和spring-objenesis-repack这两个依赖。在项目的build.gradle里面我找到了下面的代码片段,由于对gradle不太熟,大概只能猜测里面的意思,将cglib和o
2022-11-05
1752
0
0
Java
2022-11-03
JDK动态代理和Cglib性能测试
Cglib 与 JDK动态代理的运行性能比较都说 Cglib 创建的动态代理的运行性能比 JDK 动态代理能高出大概 10 倍,验证了一下引入maven依赖 <dependency> <groupId>org.springframework
2022-11-03
1569
0
0
Java
2022-11-03
JDK动态代理和Cglib的区别
Cglib和jdk动态代理的区别?Jdk动态代理:利用拦截器(必须实现InvocationHandler)加上反射机制生成一个代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理Cglib动态代理:利用ASM框架,对代理对象类生成的class文件加载进来,通过修改其字节码生成子类来
2022-11-03
1686
0
0
Java
2022-11-03
Java代理模式(静态代理、JDK动态代理、CGLIB)
代理模式代理模式是常见的设计模式之一,Java我们通常通过new一个对象然后调用其对应的方法来访问我们需要的服务。代理模式则是通过创建代理类(proxy)的方式来访问服务,代理类通常会持有一个委托类对象,代理类不会自己实现真正服务,而是通过调用委托类对象的相关方法,来提供服务,所以其实我们调用的还是
2022-11-03
1486
0
0
Java
2022-11-02
JVM内存模型
一、JVM内存划分java堆:堆是 JVM 内存中最大的一块内存空间,该内存被所有线程共享,几乎所有对象和数组都被分配到了堆内存中。堆被划分为新生代和老年代,新生代又被进一步划分为 Eden 和 Survivor 区,最后 Survivor 由 From Survivor 和 To Survivor
2022-11-02
1502
0
2
Java
1
2
3
4
5