- 博客(3)
- 收藏
- 关注
原创 【Java对象的创建过程】
Step1:类加载检查虚拟机遇到⼀条 new 指令时,⾸先将去检查这个指令的参数是否能在常量池中定位到这个类的符号引⽤,并且检查这个符号引⽤代表的类是否已被加载过、解析和初始化过。如果没有,那必须先执⾏相应的类加载过程。Step2:分配内存在类加载检查通过后,接下来虚拟机将为新⽣对象分配内存。对象所需的内存⼤⼩在类加载完成后便可确定,为对象分配空间的任务等同于把⼀块确定⼤⼩的内存从 Java 堆中划分出来。Step3:初始化零值内存分配完成后,虚拟机需要将分配到的内存空间都初始化为零值
2022-04-03 22:08:47
1032
原创 【java的引用】
1、变量初始化int num=10;String str="hello"2、变量赋值 从上图可以显而易见,num是int基本类型变量,值就直接保存在变量中。str是String引用类型变量,变量中保存的只是实际对象对应的地址信息,而不是实际对象数据。对于而这特性,如下:num=20;str="java";对于基本类型变量num,赋值运算符将会直接修改变量的值,原来的数据将被覆盖掉,被替换为新的值。对于引用类型变量str,赋值运算符只会改变变量中所保存的对象的地址信息,原.
2022-04-03 21:10:22
90
原创 【静态代码块】
1、格式 在java类中(方法中不能存在静态代码块)使用static关键字和{}声明的代码块: 1 2 3 4 5 publicclassCodeBlock { static{ System.out.println("静态代码块"); } } 2、执行时机 静态代码块在类被加载的时候就运行了,而且只运行一次,并且优先于...
2022-04-02 21:31:18
572
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人