JVM
文章平均质量分 60
记录JVM学习过程中所遇到的点点滴滴
路窑
这个作者很懒,什么都没留下…
展开
-
java String字符串拼接原理
java中的字符串的拼接可以分为下面三种情况: 1. 字符串常量与字符串常量的拼接String s1 = "a"+"b"+"c"; 2. 字符串常量与变量的拼接String s1 = "a";String s2 = s1+"b"; 3. 变量与变量的拼接String s1 = "a";String s2 = "b";String s4 = s1+s2;(1)常量与常量的拼接原理:原创 2021-09-14 12:32:27 · 7442 阅读 · 0 评论 -
反编译.class字节码文件的方法
最近在学习JVM,经常会对字节码文件进行反编译查看字节码文件的细节内容。以下是常见的两种反编译字节码文件的方法:方式一: (1)创建字节码文件:对于.java源文件可以直接运行或者编译生成.class字节码文件 (2)在项目中找到out文件夹,该文件夹中存放在编译生成的字节码文件:原创 2021-09-09 12:36:57 · 3414 阅读 · 0 评论 -
JVM类加载的过程
说明:本博客以HotSpot虚拟机为例类加载的全过程:类的生命周期:类加载过程详解:(1)加载(Loading)阶段 “加载”(Loading)阶段是整个“类加载”(Class Loading)过程中的一个阶段。在加载阶段,Java虚拟机需要完成以下三件事情:通过一个类的全限定名来获取定义此类的二进制字节流。将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构。在内存中生成一个代表原创 2021-09-08 09:15:03 · 357 阅读 · 0 评论 -
Java通过反射获取注解以及注解中的信息
首先自定义两个注解:1、用于描述表名,只能用在类、接口、枚举上@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)public @interface TableName { String value();}2、用于描述列的信息,列名、数据类型、长度@Target(ElementType.FIELD)@Retention(RetentionPolicy.RUNTIME)public @interface Colum原创 2021-07-15 17:04:04 · 5432 阅读 · 0 评论 -
Java中获取Class对象的四种方法
什么是Class对象Class类位于java核心包lang包中,它是反射的源头。Class对象用于记录每个类的运行时数据结构,或者说是在内存中访问类的静态数据的接口,每个类都有一个唯一的Class对象。Class对象不能直接通过new来获取,因为其构造器是私有的,下面是Class类的源码:private Class(ClassLoader loader) { // Initialize final field for classLoader. The initialization va原创 2021-07-15 16:51:33 · 3568 阅读 · 0 评论