07 2015 档案
摘要:一、概述 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干不同的数据区域,这些区域都有各自的用途以及创建和销毁的时间。Java虚拟机所管理的内存将会包括以下几个运行时数据区域,如下图所示: 下面就每一个区域进行阐述。二、运行时数据区域程序计数器 程序计数器,可以看做是当...
阅读全文
摘要:一、概述 网络浏览器可能是最广泛使用的软件了。本文中我将解释它们在幕后是如何工作的,我们将看到从你在地址栏中输入“google.com”,直到谷歌的页面出现在浏览器屏幕的过程中发生了什么。 1、我们将要讨论的浏览器 现在主要有五种浏览器被使用,分别是:IE、火狐、Safari、Chrome和欧...
阅读全文
摘要:一、概述 Socket类是Java执行客户端TCP操作的基础类,这个类本身使用代码通过主机操作系统的本地TCP栈进行通信。Socket类的方法会建立和销毁连接,设置各种Socket选项。 ServerSocket类是Java执行服务器端操作的基础类,该类运行于服务器,监听入站TCP连接,每个so...
阅读全文
摘要:一、概述 连接到Internet上计算机都有一个称为Internet地址或IP地址的唯一的数来标识。由于IP很难记住,人们设计了域名系统(DNS),DNS可以将人们可以记忆的主机名与计算机可以记忆的IP地址联系在一起。通常一台主机映射一个IP地址。有时一个主机名映射多个IP。这时就由DNS负责随机...
阅读全文
摘要:一、概述 TreeMap是基于红黑树实现的。由于TreeMap实现了java.util.sortMap接口,集合中的映射关系是具有一定顺序的,该映射根据其键的自然顺序进行排序或者根据创建映射时提供的Comparator进行排序,具体取决于使用的构造方法。另外TreeMap中不允许键对象是null。...
阅读全文
摘要:一、HashSet简介 HashSet是Set接口典型实现,它按照Hash算法来存储集合中的元素,具有很好的存取和查找性能。主要具有以下特点:不保证set的迭代顺序HashSet不是同步的,如果多个线程同时访问一个HashSet,要通过代码来保证其同步集合元素值可以是null 当向HashSet...
阅读全文
摘要:一、HashMap简介 HashMap是基于哈希表的Map接口实现的,它存储的是内容是键值对<key,value>映射。此类不保证映射的顺序,假定哈希函数将元素适当的分布在各桶之间,可为基本操作(get和put)提供稳定的性能。 ps:本文中的源码来自jdk1.8.0_45/src。 1、重要参数
阅读全文
摘要:一、LinkedList简介 LinkedList是一种可以在任何位置进行高效地插入和移除操作的有序序列,它是基于双向链表实现的。 ps:这里有一个问题,就是关于实现LinkedList的数据结构是否为循环的双向链表,上网搜了有很多文章都说是循环的,并且有的文章中但是我看了源代码觉得应该不是循环...
阅读全文
摘要:一、ArrayList简介 ArrayList是可以动态增长和缩减的索引序列,它是基于数组实现的List类。 该类封装了一个动态再分配的Object[]数组,每一个类对象都有一个capacity属性,表示它们所封装的Object[]数组的长度,当向ArrayList中添加元素时,该属性值会自动增...
阅读全文
摘要:替换方法:Ctrl+F删除java注释: /\*{1,2}[\s\S]*?\*/Ctrl+F 删除xml注释: Ctrl+F 删除空白行: ^\s*\n选择正则表达式,替换全部即可。具体见下图示:
阅读全文
摘要:一、过滤器概述 过滤器是JavaWeb三大组件之一,它与Servlet很相似。对于Web应用程序来说,过滤器是一个驻留在服务器端的Web组件,它可以截取客户端和资源之间的请求和响应信息并对这些信息进行过滤。本文将对过滤器的和实现机制和应用进行简单的总结。 当Web容器接收到一个对资源的请求时,它...
阅读全文