Java学习笔记
记录了博主对Java学习的一些理解
N_a_n
这个作者很懒,什么都没留下…
展开
-
Java学习笔记-句柄和直接引用
文章目录句柄概念优缺点直接指针概念优缺点句柄概念句柄通俗来讲就是指针的指针。如果使用句柄访问对象的话,会在JAVA堆中划出一部分内存作为句柄池,reference中存储的就是对象的句柄地址,而句柄中包含了对象实例数据与类型数据的各自具体的地址信息。优缺点优点:当对象被移动时(比如GC时),只需更改句柄中的实例数据指针,而reference不需要改变。这样做的好处是如果一个对象被...原创 2020-04-12 11:58:43 · 1478 阅读 · 1 评论 -
Java学习笔记-Java内存溢出
堆和栈堆Java堆是Java虚拟机管理的最大的一块内存,是一块被所有线程共享的内存区域,在虚拟机启动时创建。此内存区域的唯一目的就是存放数据实例,Java世界里“几乎”所有的对象实例都在这里分配内存。(《Java虚拟机规范》中说到:“所有的对象实例以及数组都应该在堆上分配”)。栈Java中栈通常指Java虚拟机栈,或者更多时候指的是局部变量表部分。局部变量表存放了编译期可知的各种Java...原创 2020-04-11 06:28:22 · 237 阅读 · 0 评论 -
Java学习笔记-如何破坏双亲委派模型
文章目录双亲委派模型什么是双亲委派模型分类工作流程作用破坏双亲委派模型三大特性自定义类加载器双亲委派模型什么是双亲委派模型双亲委派模型是指除了顶层的启动类加载器之外,其他的类加载器都有自己的父类加载器,这里父子关系一般通过组合实现,而不是继承。分类从 Java 虚拟机的角度来讲,只存在以下两种不同的类加载器:启动类加载器(Bootstrap ClassLoader),使用 C++...原创 2020-04-05 10:15:23 · 1452 阅读 · 0 评论 -
Java学习笔记-Java异常
所有异常都是由Throwable继承而来,但是在下一层即分为了Error和Exception。Error类层次结构描述了Java运行时系统的内部错误或者资源耗尽错误,应用程序不应该抛出这种类型的对象。如果出现这样的内部错误,除了通知给用户并尽力使得程序安全的终止外,再也无能为力了。这种情况很少出现。Exception层次又分为两个分支,一个是RuntimeException,另一个分支包含...原创 2020-04-05 17:11:46 · 182 阅读 · 0 评论 -
Java学习笔记-Java反射的原理和作用
Java编译和运行Java程序在编译期间将.java文件编译成.class文件,然后在运行期间将.class文件添加到内存中。原理反射就是程序在运行状态,可以动态的获得类的信息并调用类的方法。通过获得class对象,进而获得class对象所属类的属性和方法。应用场景一些框架使用反射实现当我们编写程序是不知道使用的是哪个类,而是要根据运行时动态的判断是哪个类时,可以使用反射。功能...原创 2020-04-05 11:59:28 · 386 阅读 · 1 评论