Java
文章平均质量分 87
zry963
GitHub:https://github.com/zry963
展开
-
Java-Socket通信
TCP Socket 通信模型原创 2016-03-28 20:52:17 · 106 阅读 · 0 评论 -
Java-LinkedHashMap源码解读
Map 接口的哈希表和链接列表实现,具有可预知的迭代顺序。此实现与 HashMap 的不同之处在于,后者维护着一个运行于所有条目的双重链接列表。此链接列表定义了迭代顺序,该迭代顺序通常就是将键插入到映射中的顺序(插入顺序)。注意,如果在映射中重新插入 键,则插入顺序不受影响。(如果在调用m.put(k, v) 前 m.containsKey(k) 返回了 true,则调用时会将键 k 重新插入原创 2016-03-27 15:28:20 · 371 阅读 · 0 评论 -
Java---JDBC学习
Java---JDBC学习1、JDBC简介JDBC全称为Java Data Base Connectivity(java数据库链接)可以为多种数据库提供统一的访问体现了Java“编写一次,处处运行”的高大上精神2、JDBC编程步骤1、加载驱动程序: Class.forName(driverClass)原创 2016-04-07 16:24:14 · 354 阅读 · 0 评论 -
Java与MySQL数据库的连接
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; public class DBHelper { public static final String url = "jdbc:mys原创 2016-05-10 13:49:08 · 293 阅读 · 0 评论 -
线程创建的两种方式
线程创建的两种方式1、继承Thread类class Mythread extends Thread{ ...@Override public void run(){}...}Mythread mt = new Mythread();mt.start();2、实现Runnable接口class MyThread implements原创 2016-06-24 14:41:34 · 300 阅读 · 0 评论 -
JAVA正则表达式
在Sun的Java JDK 1.40版本中,Java自带了支持正则表达式的包,本文就抛砖引玉地介绍了如何使用java.util.regex包。 可粗略估计一下,除了偶尔用Linux的外,其他Linu x用户都会遇到正则表达式。正则表达式是个极端强大工具,而且在字符串模式-匹配和字符串模式-替换方面富有弹性。在Unix世界里,正则表达式几乎没有什么限制,可肯定的是,它应用非常之广泛。转载 2016-07-14 11:09:57 · 523 阅读 · 0 评论 -
Java并发编程:线程池的使用
Java并发编程:线程池的使用 在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任转载 2016-07-05 09:39:44 · 308 阅读 · 0 评论 -
java中volatile关键字的含义
java中volatile关键字的含义在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉。Java语言是支持多线程的,为了解决线程并发的问题,在语言内部引入了 同步块 和 volatile 关键字机制。 synchronized 同步块大家都比较熟悉,通过 synchron转载 2016-07-08 11:00:33 · 270 阅读 · 0 评论 -
BlockingQueue
前言: 在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利。本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景。认识BlockingQueue阻塞队列,顾名思义,首先它是一个队列,而一个转载 2016-07-08 13:34:40 · 274 阅读 · 0 评论 -
Java中级开发工程师知识点归纳
(一)Java1.接口和抽象类的区别①抽象类里可以有构造方法,而接口内不能有构造方法。②抽象类中可以有普通成员变量,而接口中不能有普通成员变量。③抽象类中可以包含非抽象的普通方法,而接口中所有的方法必须是抽象的,不能有非抽象的普通方法。④抽象类中的抽象方法的访问类型可以是public ,protected和默认类型,但接口中的抽象方法只有public和默认类转载 2016-09-16 11:01:45 · 1166 阅读 · 0 评论 -
理解Java中的IO
粗略列出并理解Java中的IO引言: 对程序语言的设计者来说,创建一个好的输入/输出(I/O)系统是一项艰难的任务 本文的目录视图如下:Java IO概要 a.Java IO中常用的类 b.Java流类的类结构图1.流的概念和作用2.Java IO所采用的模型 :3.IO流的分类4.Java IO流对转载 2016-09-16 11:02:55 · 318 阅读 · 0 评论 -
Java-HashSet源码解读
HashSet实现 Set 接口,实际上是一个HashMap,不保证元素的顺序,允许使用null元素。HashSet是线程不安全的public class HashSet extends AbstractSet implements Set, Cloneable, java.io.Serializable继承AbstractSet类,实现Se原创 2016-03-27 15:11:36 · 284 阅读 · 0 评论 -
Java--collection集合类
collection-- List 、Set Queue SortedSetmap--SortedMapList:可以放重复的内容。Set:不能放重复的内容,所有重复内容靠hashCode()和equals()两个方法区别。Quene:队列接口。SortedSet:可以对集合中的数据进行排序。List的子类:ArrayList:继承 Abstr原创 2016-03-24 11:50:23 · 272 阅读 · 0 评论 -
Java--ArrayList源码解读
ArrayList 源码解读ArrayList 的size、isEmpty、get、set、iterator 和 listIterator 操作都以固定时间运行。add 操作以分摊的固定时间 运行,也就是说,添加 n 个元素需要 O(n) 时间。其是不同步的。public class ArrayList extends AbstractList implement原创 2016-03-30 16:55:35 · 240 阅读 · 0 评论 -
Java--LinkedList源码解读
LinkedListpublic class LinkedListextends AbstractSequentialListimplements List, Deque, Cloneable, Serializable实现了List接口,LinkedList 类还为在列表的开头及结尾 get、remove 和 insert 元素提供了统一的命名方法。这些操作允许将链接原创 2016-03-30 19:39:54 · 224 阅读 · 0 评论 -
Java--TreeMap源码解读
TreeMappublic class TreeMap extends AbstractMap implements NavigableMap, Cloneable, Serializable TreeMap基于红黑树(Red-Black tree)实现,根据键值的自然顺序进行排序,或者根据创建映射时提供的Comparator进行排序。此实现为 containsKey、get、pu原创 2016-03-30 20:11:21 · 353 阅读 · 0 评论 -
TreeMap
原文出自:http://cmsblogs.com/?p=1013。尊重作者的成果,转载请注明出处! 个人站点:http://cmsblogs.com-------------------------------------------------------------------------------------------------------------转载 2016-03-30 21:50:23 · 311 阅读 · 0 评论 -
Java多线程
1、进程程序(任务)的执行过程。----动态持有资源(共享内存,共享文件)和线程---载体 线程最小的执行单元同一进程中有多个线程线程共享进程资源线程交互:同步、互斥进程交互:1、管道:管道是一种半双工的方式,数据只能单向流动,而且只能在具有亲缘关系的进程使用。进程的亲缘关系是指父子关系。2、有名管道:是一种半双工的方式,允许无亲缘关系的进程间的原创 2016-04-05 11:06:03 · 254 阅读 · 0 评论 -
Java反射机制
1、Class类的使用java语言中,静态的成员和普通数据类型不是对象类是对象,是java.lang.Class类的实例对象任何一种类都是Class的实例对象,这个实例对象有三种表示1、Class c1=foo.class;2、Class c2=foo1.getClass();//已知该类的对象通过getClass方法3、Class c3原创 2016-04-05 15:45:44 · 213 阅读 · 0 评论 -
Java注解
Java注解1、JDK自带注解 @Override 复写@Deprecated 该方法已经过时@Suppvisewarnings 忽略警告2、注解分类按照运行机制分:源码注解(只在源码中有,编译成class文件就没有了)编译时注解(在源码和class文件中都有)运行时注解(在运行阶段还起作用原创 2016-04-05 17:09:01 · 350 阅读 · 0 评论 -
Java-ConcurrentHashMap源码分析
由于Hashtable的每个方法前面均加有synchronized 关键字,来保证其是线程安全的,但这对于高并发,影响了其效率,相当于把整张表都锁起来了。原创 2016-03-26 23:22:18 · 334 阅读 · 0 评论 -
Java-HashTable源码分析
Hashtableinitial capacity:初始容量load factor:负载因子 the default load factor (.75) offers a good tradeoff between time and space costs. * Java Collections Framework. Unlike the new collec原创 2016-03-26 22:42:12 · 94 阅读 · 0 评论 -
Java-HashMap源码分析
HashMap : initial capacity :初始容量load factor:负载因子默认为0.75Note that this implementation is not synchronized. HashMap中的方法是非同步的,不是线程安全的。fail-fast: if the map is structurally modified at any time a原创 2016-03-26 20:44:15 · 307 阅读 · 0 评论 -
24点破解的Java实现
一、基本思想要想计算24点游戏的结果,则必须要采用基于搜索的算法(即穷举法)对每种情况进行遍历,我们怎么样才能遍历所有的情况呢?其实我们只要总结一下,还是有规律可以找的。输入a、b、c、d,组成a Op1 bOp2 c Op3 d的表达式,其中先算哪个子表达式未知,一共有5种计算方式,如下图所示: 此时如果要实现该程序,需要转载 2016-09-20 00:42:47 · 500 阅读 · 0 评论