面经
胡小胖HYY
一名程序媛
展开
-
Java8 方法参数反射
参数反射 :Parameter对象 注意 1、javac命令编译java源文件时,默认生成的class文件并不包含方法的形参名信息,因此调用isNamePresent()方法将会返回 false,调用getName()方法也不能得到该参数的形参名; 2、如果希望javac命令编译java源文件时保留形参信息,则需要为该指令指定-parameters选项 ...原创 2019-12-12 09:12:12 · 481 阅读 · 0 评论 -
JDK、JRE、JVM浅析
jdk : javase development kit ,包含java编译器、JRE、以及一些基本的类库jre: java runtime environment , 包含jvm,以及一些类库jvm :java virtual machine , 相当于一台虚拟计算机,专门用来执行字节码文件 java程序执行过程 : .java文件 to .class文件 , 用到了java编译器 ,j...原创 2019-10-18 13:00:50 · 104 阅读 · 0 评论 -
JVM(一) Java类的加载机制
1、类的加载 定义:将类的.class文件中二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个 java.lang.Class对象, 用来封装在方法区内的数据结构; 类加载最终产品为位于堆区中class对象,class对象封装了类在方法区中的数据结构,并向Java程序员提供 ...原创 2019-12-04 17:01:13 · 77 阅读 · 0 评论 -
java 内存泄露
1、jvm判断对象可回收标准:引用计数法、可达性分析 引用计数法:每个对象有一个引用计数属性,新增一个引用时计数加1,释放一个引用时计数减1,计数为0时可以回收; 缺陷:存在对象相互循环引用问题,A引用B,B引用A,此时A、B都不再使用,但因为相互引用,计数器=1永远无法回收; ...原创 2019-12-04 10:29:50 · 112 阅读 · 0 评论 -
String
1、对象和对象引用:在Java中,不能直接操作对象,所以就有了对象引用,对象引用存储对象在内存中的地址; 2、JVM在执行程序时会把内存区域划分为若干个不同的数据区域:方法区、栈、堆; 方法区:运行时的常量池; 栈:基本类型变量,对象引用,方法调用; 堆:创建的对象和数组; 例子:对象存储在堆中,而对象的引用存储在栈中; 3、字符串不可变...原创 2019-12-03 16:00:53 · 56 阅读 · 0 评论