Java编程
文章平均质量分 78
xujian_2014
这个作者很懒,什么都没留下…
展开
-
Java字符串处理
一、概述Java是以String类型的对象来实现字符串。String是一个类,当创建一个String对象后,所创建的字符串是不能改变的。在需要使用可修改的字符串时,Java提供两个选择—StringBuffer和StringBuilder。注:声明为String引用的变量在任何时候都可以改变,以指向一些其他的String对象。二、String构造函数String s原创 2015-04-19 12:05:17 · 729 阅读 · 0 评论 -
Java集合系列之ArrayList源码分析
一、ArrayList简介 ArrayList是可以动态增长和缩减的索引序列,它是基于数组实现的List类。 该类封装了一个动态再分配的Object[]数组,每一个类对象都有一个capacity属性,表示它们所封装的Object[]数组的长度,当向ArrayList中添加元素时,该属性值会自动增加。如果想ArrayList中添加大量元素,可使用ensureCapacity方法一原创 2015-07-06 21:12:05 · 1042 阅读 · 1 评论 -
Java集合系列之HashSet源码分析
一、HashSet简介 HashSet是Set接口典型实现,它按照Hash算法来存储集合中的元素,具有很好的存取和查找性能。主要具有以下特点:不保证set的迭代顺序HashSet不是同步的,如果多个线程同时访问一个HashSet,要通过代码来保证其同步集合元素值可以是null 当向HashSet集合中存入一个元素时,HashSet会调用该对象的hashCode()方法来原创 2015-07-13 20:26:20 · 819 阅读 · 0 评论 -
Java集合系列之LinkedList源码分析
一、LinkedList简介 LinkedList是一种可以在任何位置进行高效地插入和移除操作的有序序列,它是基于双向链表实现的。 ps:这里有一个问题,就是关于实现LinkedList的数据结构是否为循环的双向链表,上网搜了有很多文章都说是循环的,并且有的文章中但是我看了源代码觉得应该不是循环的? 例如在删除列表尾部节点的代码: private E unli原创 2015-07-08 18:24:06 · 1294 阅读 · 0 评论 -
Java内存模型
一、概述 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干不同的数据区域,这些区域都有各自的用途以及创建和销毁的时间。Java虚拟机所管理的内存将会包括以下几个运行时数据区域,如下图所示: 下面就每一个区域进行阐述。回到顶部二、运行时数据区域程序计数器 程序计数器,可以看做是当前线程所执行的字节码的行号指示器。在虚拟原创 2015-07-28 09:11:49 · 575 阅读 · 0 评论 -
Java集合系列之TreeMap源码分析
一、概述 TreeMap是基于红黑树实现的。由于TreeMap实现了java.util.sortMap接口,集合中的映射关系是具有一定顺序的,该映射根据其键的自然顺序进行排序或者根据创建映射时提供的Comparator进行排序,具体取决于使用的构造方法。另外TreeMap中不允许键对象是null。 1、什么是红黑树? 红黑树是一种特殊的二叉排序树,主要有以下几条基本性原创 2015-07-15 14:18:59 · 1027 阅读 · 0 评论 -
Java网络编程之TCP通信
一、概述 Socket类是Java执行客户端TCP操作的基础类,这个类本身使用代码通过主机操作系统的本地TCP栈进行通信。Socket类的方法会建立和销毁连接,设置各种Socket选项。 ServerSocket类是Java执行服务器端操作的基础类,该类运行于服务器,监听入站TCP连接,每个socket服务器监听服务器的某个端口,当远程主机的客户端尝试连接此端口时,服务器就被唤原创 2015-07-21 09:21:46 · 909 阅读 · 0 评论 -
Java垃圾回收机制
一、概述 上一篇文章Java内存模型提到虚拟机所管理的内存主要包括以下几个区域:程序计数器、虚拟机栈、本地方法栈、方法区和堆。其中前三个区域随线程而生死,这些区域的内存分配和回收都具有确定性。而堆和方法区则具有不确定性,只有程序处于运行期间才能知道会创建哪些对象,本文主要讨论这两个部分内存的回收。二、Java内存管理 Java的内存管理就是对象的分配和释放问题。在Jav原创 2015-09-06 14:35:20 · 428 阅读 · 0 评论 -
Hibernate系列之基本配置
一、概述 Hibernate是一个开放源码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使我们可以使用对象的编程思维来操作数据库。二、配置准备 IDE:Eclipse 下载Jar包: 三、配置步骤 1、创建新的Java项目 2、建立用户库-hibernate,引入相应的jar包项目右键-b原创 2015-09-14 16:55:13 · 462 阅读 · 0 评论 -
Java static关键字
概述本文将讨论Java static关键字的使用。它可以被用于类名、变量、方法和块。静态类只有当一个类为嵌套类时才能使用static,这个嵌套类可以不使用外部类的对象就可以访问。例子:public class TestMain{ static class X { static String str="Inside Class X"; } public static v原创 2015-11-26 10:59:57 · 469 阅读 · 0 评论 -
Java访问数据库Mysql
一、概述 本文主要介绍Java接连数据库的基本方法和步骤,并对其中的几个要点进行简要说明。二、数据库访问步骤 在Java中连接数据库进行的访问主要有以下几个步骤:加载数据库驱动注册数据库驱动建立到数据库的连接访问数据库 首先,要调用Class.ForName()加载并注册mysql驱动程序类,加载驱动程序驱动类后,需要注册驱动程序类的一个实例,Driv原创 2015-06-15 20:51:44 · 1181 阅读 · 0 评论 -
Eclipse删除代码中所有注释及空格
替换方法:Ctrl+F 删除java注释: /\*{1,2}[\s\S]*?\*/Ctrl+F 删除xml注释: Ctrl+F 删除空白行: ^\s*\n选择正则表达式,替换全部即可。具体见下图示:原创 2015-07-05 17:28:47 · 8183 阅读 · 0 评论 -
Java多线程
1、多线程概述当一个程序运行时,内部可能包含了多个顺序执行流,每个顺序执行流就是一个线程。主要以下几个优点:线程之间很容易实现共享内存创建线程代价较小Java语言内置多线程功能支持2、线程的创建和启动所有的线程对象都是Thread类或其子类的对象,每一个线程完成一定的任务。Java定义了两种创建线程的方法:方法一:继承Thread类创建线原创 2015-04-15 17:02:46 · 645 阅读 · 0 评论 -
Java的I/O操作
一、概述 Java的IO支持通过java.io包下的类和接口来完成,在java.io包下主要有包括输入、输出两种IO流,每种输入输出流又可分为字节流和字符流两大类。从JDK1.4以后,Java在java.nio包下提供了系列的全新API,通过java.nio,程序可以更高效的进行输入、输出操作。二、Java I/O类和接口 1、File类 File类直接处理文件和文件原创 2015-04-24 16:41:29 · 743 阅读 · 0 评论 -
java连接mysql数据库
1、首先下载mysql安装包,下载链接mysql下载,然后安装。2、输入安装时的用户名和密码,连接数据库。3、在Eclipse 中安装mysq JDBCl驱动,安装步骤如下图示:测试是否成功连接mql,代码:package day_09;import java.sql.*;public class Test{ public原创 2015-04-09 14:17:55 · 806 阅读 · 0 评论 -
Java正则表达式
一、概述 正则表达式是一串描述一个字符序列的字符,可以用来查找其他字符序列中的匹配项。支持正则表达式处理的是两个类:Pattern和Matcher,使用Pattern定义正则表达式,使用Matcher匹配其他序列中的模式。二、创建正则表达式 创建正则表达式就是创建一个特殊的字符串。 正则表达式的编译表达形式:指定为字符串的正则表达式必须首先被编译为此类的实例,原创 2015-04-29 16:27:04 · 1167 阅读 · 0 评论 -
XML的基本用法
一、概述 XML全称为可扩展的标记语言。主要用于描述数据和用作配置文件。 XML文档在逻辑上主要由一下5个部分组成:XML声明:指明所用XML的版本、文档的编码、文档的独立性信息文档类型声明:指出XML文档所用的DTD元素:由开始标签、元素内容和结束标签构成注释:以结束,用于对文档中的内容起一个说明作用处理指令:通过处理指令来通知其他应用程序来处理非XML格式的数据,格原创 2015-05-06 09:11:39 · 562 阅读 · 0 评论 -
Servlet基本用法二接口和类
一、摘要 本文主要简单介绍开发Servl原创 2015-05-28 16:22:52 · 1263 阅读 · 0 评论 -
JSP运行机制
一、概述 JSP原创 2015-06-05 21:21:27 · 3577 阅读 · 0 评论 -
Java集合系列之HashMap源码分析
一、HashMap简介 HashMap是基于哈希表的Map接口实现的,它存储的是内容是键值对映射。此类不保证映射的顺序,假定哈希函数将元素适当的分布在各桶之间,可为基本操作(get和put)提供稳定的性能。 ps:本文中的源码来自jdk1.8.0_45/src。1、重要参数 HashMap的实例有两个参数影响其性能。 初始容量:哈希表中桶的数量原创 2015-07-10 17:09:47 · 987 阅读 · 0 评论 -
【Java并发编程一】线程安全
什么是线程安全?当多个线程访问一个类时,如果不用考虑这些线程在运行时环境下的调度和交替执行,并且不需要额外的同步及在调用代码代码不必作其他的协调,这个类的行为仍然是正确的,那么称这个类是线程安全的。内部锁Java提供了强制性的内置锁机制:synchronized块。一个synchronized块有两个部分:锁对象的引用,以及这个锁保护的代码块。执行线程进入synchronized块原创 2015-11-27 15:11:34 · 622 阅读 · 0 评论