摘要: 1、Java内存区域 运行时数据区域: Java 虚拟机在执行Java程序时,定义了若干种程序运行期间会使用到的运行时数据区,其中有一些会随着虚拟机启动而创建,随着虚拟机退出而销毁。另外一些则是与线程一一对应的,这些与线程对应的数据区域会随着线程开始和结束而创建和销毁。 程序计数器(Program 阅读全文
posted @ 2019-10-10 16:35 喜欢听风 阅读(936) 评论(0) 推荐(0) 编辑
摘要: 1、线程与进程 进程: 进程是程序运行以及资源分配的基本单位,一个程序至少有一个进程。 如下图所示: 线程: 线程是CPU调度和分配的基本单位,一个进程至少有一个线程。 同一个进程中的线程共享进程资源(减少切换,可提高效率),且可以并发执行。 2、并发和并行 并发: 指的是同一时间间隔执行多个事件, 阅读全文
posted @ 2019-10-07 17:35 喜欢听风 阅读(280) 评论(0) 推荐(0) 编辑
摘要: 1、HashMap源码解析(JDK8) 基础原理: 对比上一篇《Java中的容器(集合)之ArrayList源码解析》而言,本篇只解析HashMap常用的核心方法的源码。 HashMap是一个以键值对存储的容器。 hashMap底层实现为数组+链表+红黑树(链表超过8时转为红黑树,JDK7为数组+链 阅读全文
posted @ 2019-10-03 22:50 喜欢听风 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 1、ArrayList源码解析 源码解析: 如下源码来自JDK8(如需查看ArrayList扩容源码解析请跳转至《Java中的容器(集合)》第十条):。 (以上所有内容皆为个人笔记,如有错误之处还望指正。) 阅读全文
posted @ 2019-10-02 18:59 喜欢听风 阅读(371) 评论(0) 推荐(0) 编辑
摘要: 1、Java常用容器:List,Set,Map List: 继承了Collection接口(public interface List<E> extends Collection<E> ),有序且允许出现重复值。 Set: 继承了Collection接口(public interface Set<E 阅读全文
posted @ 2019-10-02 16:53 喜欢听风 阅读(1004) 评论(0) 推荐(3) 编辑
摘要: 1、Java中的I/O分类 I/O分类: 输入流,输出流,或者字节流,字符流 I/O中的四个抽象基类: InputStream,OutputStream:两者属于字节流,前者输入,后者输出。一般后缀名为这两个的都属于字节流家族。 Reader,Writer:两者属于字符流,前者输入,后者输出。一般后 阅读全文
posted @ 2019-10-01 18:04 喜欢听风 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 1、Java面向对象三大特性:封装,继承,多态 封装: 将现实中的客观事物封装成抽象的类。 对一个类中的变量,方法进行访问符修饰,以达到有些变量,方法对外开放,有些变量,方法隐藏。 针对第2点对应的访问修饰符有(范围从大到小):public > protected > default > priva 阅读全文
posted @ 2019-09-30 12:13 喜欢听风 阅读(183) 评论(0) 推荐(0) 编辑