Java
绘梦逐心
这个作者很懒,什么都没留下…
展开
-
Java垃圾回收机制
判断对象是否为垃圾的算法:引用计数算法(判断对象的引用数量来决定对象是否可以被回收,每个对象实例都有一个引用计数器,被引用+1、完成引用-1,任何引用计数为0的对象实例可以被当作垃圾回收)优点:执行效率高,程序执行受影响较小缺点:无法检测出循环引用的情况,导致内存泄漏可达性分析算法(判断对象的引用链是否可达来决定对象是否可以被回收)可以作为GC root 的对象虚拟机栈中引...转载 2019-03-04 23:02:05 · 107 阅读 · 0 评论 -
GC相关问题
Object的finalize()方法的作用是否与C++的析构函数作用相同?1、与C++的析构函数不同,析构函数调用确定,而他的是不确定的2、将未被引用的对象放置于F-Queue队列3、方法执行随时可能会被终止(低优先级)4、给予对象最后一次重生的机会Object的finalize()方法的作用是什么?finalize()的作用是为对象创造最后一次逃脱死亡的机会。当垃圾回收器宣...转载 2019-03-05 13:01:03 · 137 阅读 · 0 评论 -
Java底层知识:JVM(反射、Classloader)
谈谈反射JAVA 反射机制是指在运行状态中:对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。Metohd:newInstance()方法返回的是泛型。getDeclaredMethod可以获得该类所有的方法,除去继承和实现了接口的方法。如果是私有的方法,必须使...转载 2019-03-05 13:01:41 · 229 阅读 · 0 评论 -
Java线程知识
进程和线程的区别进程和线程的由来:进程:进程独占内存空间,保存各自运行状态,相互间不干扰且可以互相切换,为并发处理任务提供了可能。线程:共享进程的内存资源,相互间切换更快速,支持更细粒度的任务控制,使进程内的子任务得以并发执行。进程是资源分配的最小单位,线程是CPU调度的最小单位所有与进程相关的资源,都被记录在PCB中;进程是抢占处理机的调度单位,拥有自己的虚拟内存空间,线程只属于某...原创 2019-03-05 16:31:10 · 89 阅读 · 0 评论 -
Java多线程与并发-原理
线程安全问题主要诱因:存在共享数据(也称临界资源)存在多条线程共同操作这些共享数据解决方法:同一时刻有且只有一个线程在操作共享数据,其它线程必须等到该线程处理完数据后再对共享数据进行操作互斥锁的特性互斥性:即在同一时间只允许一个线程持有某个对象锁,通过这种特性来实现多线程的协调机制,这样在同一时间只有一个线程对需要同步的代码块(复合操作)进行访问。互斥性也称为操作的原子性。...原创 2019-03-05 22:50:01 · 650 阅读 · 0 评论 -
Java常用类库、技巧
1、Java异常体系java异常机制主要回答了三个问题what:异常类型回答了什么被抛出where:异常堆栈跟踪回答了在哪抛出why:异常信息回答了为什么被抛出RuntimeException:不可预知的异常,程序应当自行避免,是程序应该承担的责任非RuntimeException:可预知的异常,从编译器可以校验的异常,是Java编译器应该承担的责任Checked Except...原创 2019-03-06 16:34:31 · 150 阅读 · 0 评论 -
java内存模型
线程私有-程序计数器1、当前线程所执行的字节码行号指示器(逻辑)2、改变计数器的值来选取下一条需要执行的字节码指令3、和线程是一对一的关系即“线程私有”4、对Java方法计数,如果是native方法则计数器值为Undefined5、不会发生内存泄漏线程私有——Java虚拟机栈1、Java方法执行的内存模型2、包含多个栈帧递归为什么会引发java.lang.StackO...转载 2019-03-04 21:10:04 · 111 阅读 · 0 评论 -
Spring学习
简介:SpringBoot其实不是什么新的框架,它默认配置了许多框架的使用方式,就像maven整合了所有的jar包。SpringBoot整合了所有的框架,并通过一行简单的main方法启动应用。...原创 2019-03-20 10:42:09 · 116 阅读 · 0 评论 -
JDBC学习详解(一)
JDBC基本概念Java database connectivity java数据库连接JDBC本质:官方定义的一套操作所有关系型数据库的规则,即接口,各个数据库厂商实现这套接口提供数据库驱动jar包,我们可以使用这套接口(jdbc)编程,真正执行的代码是驱动jar包的实现类。快速入门导入驱动jar包:1.复制jar包到项目的libs目录下 右键 add as library...原创 2019-03-22 23:24:20 · 154 阅读 · 0 评论