Loading

摘要: 垃圾收集器与内存分配策略 概述 程序计数器,虚拟机栈,本地方法栈随线程创建而产生,随线程销毁而消失,内存的分配和回收具有确定性,一般不考虑回收问题. 对象存活性判断 引用计数算法(Reference Counting) 特点: 在对象中添加一个引用计数器. 当有一个引用时,计数器加一;当一个引用失效 阅读全文
posted @ 2020-07-01 08:54 战五渣渣渣渣渣 阅读(197) 评论(0) 推荐(0) 编辑
摘要: Java线程池 基本概念 特点: 管理线程,避免增加和销毁线程的资源消耗。 提高响应速度。任务到达无需等待线程创建即可立即执行。 重复利用。 避免了线程数量膨胀导致的过分调度问题。 提供更多功能。可以添加更多功能,如延时定时线程池等。 线程池核心设计与实现 线程池的实现类为ThreadPoolExe 阅读全文
posted @ 2020-07-01 08:52 战五渣渣渣渣渣 阅读(274) 评论(0) 推荐(0) 编辑
摘要: Java内存泄漏 解释 内存泄漏: 存在一些被分配的对象,满足两个特点: 对象是可达的:在有向图中,存在通路与之相连. 对象是无用的:程序以后不再使用这些对象. 结果:消耗越来越多的内存资源,最终导致OutOfMemoryError。 与C++的区别: C++:对象被分配内存空间,却不可达. Jav 阅读全文
posted @ 2020-07-01 08:47 战五渣渣渣渣渣 阅读(152) 评论(0) 推荐(0) 编辑
摘要: Java类加载机制 简介 类的加载: 将类的.class文件中的二进制数据读取到内存中,将其放在运行时数据区的方法区中,在堆内存中创建一个java.lang.Class对象,用来封装在方法区内的数据结构。 Class对象: 封装类在方法区内的数据结构,提供访问方法区的数据结构的接口。 注:不需要等到 阅读全文
posted @ 2020-07-01 08:45 战五渣渣渣渣渣 阅读(87) 评论(0) 推荐(0) 编辑
摘要: Java反射机制 程序可以访问,检测和修改本身状态或行为的能力。 类的组成: 成员变量 方法 构造方法 发射机制的功能: 运行时判断任意一个对象所属的类 运行时构造任意一个类的对象 运行时判断任意一个类所具有的成员变量和方法 运行时调用任意一个对象的方法 生成动态代理 相关API 通过一个对象获得完 阅读全文
posted @ 2020-07-01 08:43 战五渣渣渣渣渣 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 多态原理 什么是多态 编译时多态->方法重载 运行时识别对象和类的类型信息方法: 反射 RTTI(Run-Time Type Identification,运行时类型判定) RTTI: 在编译时获取对象的类型信息. 多态: 一个接口的多种不同的实现方式. 只有在运行时才知道引用变量所指向的具体实例对 阅读全文
posted @ 2020-07-01 08:41 战五渣渣渣渣渣 阅读(147) 评论(0) 推荐(0) 编辑
摘要: Java程序运行的整体流程 概述 Java程序从创建源文件到程序运行要经历两个主要步骤: 源文件 编译器编译> 字节码文件(ByteCode)。 字节码文件 JVM解释运行> 在内存中运行 Java程序从编译到运行 示例程序: public class ClassA{ public static v 阅读全文
posted @ 2020-07-01 08:37 战五渣渣渣渣渣 阅读(448) 评论(0) 推荐(0) 编辑
摘要: Java并发-线程基础 线程状态转移 线程状态: 新建(New) 可运行(Runnable) 阻塞(Blocking) 无期限等待(Waiting) 期限等待(Timed Waiting) 死亡(Terminated) 新建 创建后未启动. 可运行 可能正在运行,可能在等CPU时间片. 包含Runn 阅读全文
posted @ 2020-07-01 08:35 战五渣渣渣渣渣 阅读(128) 评论(0) 推荐(0) 编辑
摘要: Java并发理论基础 为什么需要多线程 CPU增加缓存,以均衡与内存间的速度差异. ==> 可见性问题 进程,线程,分时复用CPU,均衡CPU和I/O的速度差异. ==> 原子性问题 编译程序优化指令执行次序,使缓存合理利用. ==> 有序性问题 并发出现问题的原因 可见性 可见性:一个线程对共享变 阅读全文
posted @ 2020-07-01 08:33 战五渣渣渣渣渣 阅读(115) 评论(0) 推荐(0) 编辑
摘要: Java中的IO,BIO,NIO,AIO详解 IO BIO,NIO和AIO的关系 BIO:java.io包.基于流模型实现,使用同步,阻塞方式.即:读输入流或写输出流时,在读或写动作完成之前,读(写)线程一直阻塞.性能差. NIO:java.nio包.可以构建多路复用,同步非阻塞的IO操作. AIO 阅读全文
posted @ 2020-07-01 08:32 战五渣渣渣渣渣 阅读(295) 评论(0) 推荐(0) 编辑