08 2014 档案

摘要:思考为什么要引入容器这个概念? Java有多种方式保存对象(应该是对象的引用),例如使用数组时保存一组对象中的最有效的方式,如果你想保存一组基本类型的数据,也推荐使用这种方式,但大家知道数组是具有固定尺寸的,你必须事先知道你要需要多少个对象。但是在一般的情况中,你在写程序中并不知道将需要多少个对象,... 阅读全文
posted @ 2014-08-31 23:52 积淀 阅读(3749) 评论(0) 推荐(1)
摘要:ConcurrentModificationException 异常:并发修改异常,当方法检测到对象的并发修改,但不允许这种修改时,抛出此异常。一个线程对collection集合迭代,另一个线程对Collection进行修改的时候, 就会出现上面的异常.下面看一下代码:package cn.itca... 阅读全文
posted @ 2014-08-30 21:22 积淀 阅读(467) 评论(0) 推荐(0)
摘要:装饰设计模式:又名包装模式(Wrapper),以对客户端透明的方式扩展对象的功能,是继承关系的一种替代关系。装饰模式以对客户端透明的方式动态的给一个对象附加上更多的责任。换言之,客户端不会觉得在装饰前和装饰后有什么不同。下面看装饰设计模式的UML类图: 在装饰模式中的各个角色:抽象构件Comp... 阅读全文
posted @ 2014-08-28 14:13 积淀 阅读(222) 评论(0) 推荐(0)
摘要:工厂模式:专门负责将大量有共同接口的类实例化,工厂模式可以动态的决定将哪一个类实例化,不必事先知道每次要实例化哪一个类。工厂模式有以下几种形态:简单工厂模式(simple factory)又称静态工厂模式。工厂方法模式(Factory Method)又称多态工厂模式模式。抽象工厂模式(Abstrac... 阅读全文
posted @ 2014-08-25 17:10 积淀 阅读(341) 评论(0) 推荐(0)
摘要:TCP传输(传输控制协议):TCP协议是一种面向连接的,可靠的字节流服务。当客户端和服务器端彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能进行数据的传输。它将一台主机发出的字节流无差错的发送到互联网的其它主机。在发送端负责把上层传下来的字节流分成报文段传递给下层。在接收端负责把报文重组... 阅读全文
posted @ 2014-08-22 23:24 积淀 阅读(322) 评论(0) 推荐(0)
摘要:UDP传输:面向无连接的协议,不可靠,只是把应用程序传给IP层的数据报包发送出去,不保证发送出去的数据报包能到达目的地。不用再客户端和服务器端建立连接,没有超时重发等机制,传输速度快是它的优点。就像寄信,写好信放到邮箱桶里面,既不能保证信件在邮递过程中不丢失,也不能保证信件是按顺序寄到目的地的。看j... 阅读全文
posted @ 2014-08-22 22:56 积淀 阅读(332) 评论(0) 推荐(0)
摘要:线程的概述: 线程是程序的多个执行路径,执行调度的单位,依托于进程存在。线程不仅可以共享进程的内存,而且还拥有一个属于自己的内存空间,这段内存空间叫做线程栈,是建立线程的时候由系统分配的,主要用来保存线程内部的数据,如线程执行函数中定义的变量。 java中多线程是一种抢占机制而不是分时机制。抢占机制 阅读全文
posted @ 2014-08-22 13:12 积淀 阅读(336) 评论(0) 推荐(0)
摘要:wait和sleep区别:相同点:调用wait,sleep方法都可以是线程进入阻塞状态,让出cpu的执行权。不同点:1.sleep必须指定时间,但是wait方法可以指定时间,也可以不指定时间。 2.wait方法必须在同步中使用,但是sleep不一定在同步中使用。 3.在同步中,调用sleep方法释... 阅读全文
posted @ 2014-08-22 11:13 积淀 阅读(408) 评论(0) 推荐(0)
摘要:看API文档介绍几个方法:JDK1.5中提供了多线程的升级解决方案: 特点:1.将同步synchronized显示的替换成Lock 2.接口Condition:Condition替代了Object监视器方法(wait、notify、notifyAll),分别替换成了await(),signal() ... 阅读全文
posted @ 2014-08-22 10:06 积淀 阅读(348) 评论(0) 推荐(0)
摘要:动态代理:动态代理是指在实现阶段不需要关心代理谁,而在运行阶段才指定代理哪一个对象。Spring AOP采用的核心思想就是动态代理设计模式。下面看动态代理的UML类图: 动态代理类:package com.lp.ecjtu.DynamicProxy;import java.lang.reflect.... 阅读全文
posted @ 2014-08-20 23:23 积淀 阅读(519) 评论(0) 推荐(0)
摘要:VM运行时数据区域:根据《Java虚拟机规范(第二版)》的规定,JVM包括下列几个运行时区域:我们思考几个问题:1.jVM是怎么运行的?2.JVM运行时内存是怎么分配的?3.我们写的java代码(类,对象,方法,常量,变量等等)最终存放在哪个区?VM运行时数据区域:1.程序计数器(program C... 阅读全文
posted @ 2014-08-19 17:41 积淀 阅读(730) 评论(0) 推荐(0)
摘要:1. 问题背景在开发“客户群成员关系图”功能时,用到了关系图组件MxClient库,在开发过程中,发现该组件在IE8 及IE9下有兼容性问题:不能展示图形节点的背景图及样式、不能展示关系图之间的连接线。在IE8兼容模式下、在IE6及IE7下都能正常展示,在IE8 标准模式及IE9标准模式下,都不能正... 阅读全文
posted @ 2014-08-17 11:39 积淀 阅读(496) 评论(0) 推荐(0)
摘要:1.网际协议IP:网际协议IP是TCP/IP体系中两个最主要的协议之一。与IP协议配套使用的还有四个协议:地址解析协议ARP(AddressResolutionProtocol)逆地址解析协议RARP(ReverseAddressResolutionProtocol)网际控制报文协议ICMP(Int... 阅读全文
posted @ 2014-08-15 08:51 积淀 阅读(961) 评论(0) 推荐(0)
摘要:ISO制定的OSI参考模型的过于庞大、复杂招致了许多批评。与此对照,由技术人员自己开发的TCP/IP协议栈获得了更为广泛的应用。如图2-1所示,是TCP/IP参考模型和OSI参考模型的对比示意图。TCP/IP参考模型的层次结构 TCP/IP协议栈是美国国防部高级研究计划局计算机网(Advanced... 阅读全文
posted @ 2014-08-14 15:41 积淀 阅读(1966) 评论(0) 推荐(0)
摘要:转载 TCP/IP 协议简单分析首先TCP和IP是两种不同的协议,它们来七层网络模型中分别在不同的层次,IP协议是网络层的协议,TCP是更高一层的传输层的协议,TCP是建立在IP协议之上的,所以一般把TCP和IP连在一起说TCP/IP协议。Windows系统的TCP协议栈的数据包默认是1460字节大... 阅读全文
posted @ 2014-08-14 14:15 积淀 阅读(269) 评论(0) 推荐(0)
摘要:/*需求:在java中,字符串“abcd”与字符串“ab你好”的长度是一样,都是四个字符。但对应的字节数不同,一个汉字占两个字节。定义一个方法,按照最大的字节数来取子串。如:对于“ab你好”,如果取三个字节,那么子串就是ab与“你”字的半个,那么半个就要舍弃。如果去四个字节就是“ab你”,取五个字节... 阅读全文
posted @ 2014-08-13 17:33 积淀 阅读(345) 评论(0) 推荐(0)
摘要:直接看代码:package cn.itcast.io.p6.bytestream;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOException;public cl... 阅读全文
posted @ 2014-08-13 09:27 积淀 阅读(547) 评论(0) 推荐(0)
摘要:管道流(线程通信流):管道流的主要作用是可以进行两个线程间的通讯,分为管道输出流(PipedOutputStream)、管道输入流(PipedInputStream),如果想要进行管道输出,则必须要把输出流连在输入流之上。如图所示: 1.管道输入流应该连接到管道输出流 ,输入流和输出流可以直接连接 ... 阅读全文
posted @ 2014-08-12 20:44 积淀 阅读(281) 评论(0) 推荐(0)
摘要:策略设计模式:定义一组算法,将每个算法都分装起来,并使他们之间可以互换。 策略模式就是使用的面向对象思想中的继承和多态的机制 策略模式的通用类图: Context类:Strategy类,并且和Strategy类是整体和个体的关系,即聚合关系。对策略角色个体进行封装。 Strategy接口:定义这个策 阅读全文
posted @ 2014-08-12 12:50 积淀 阅读(281) 评论(0) 推荐(0)
摘要:UML(Unified Modeling Language)统一建模语言。包括以下几个重要功能:可视化功能(Visualizing)说明功能(specifying)建造功能(Construting)建文档功能(Documenting)UML包括:使用案例图(User case diagrams)类图... 阅读全文
posted @ 2014-08-12 11:27 积淀 阅读(344) 评论(0) 推荐(0)
摘要:*java多线程--等待唤醒机制:经典的体现"生产者和消费者模型*对于此模型,应该明确以下几点:*1.生产者仅仅在仓库未满的时候生产,仓库满了则停止生产。*2.消费者仅仅在有产品的时候才能消费,仓空则等待。*3.当消费者发现仓储没有产品可消费的时候,会唤醒等待生产者生产。*4.生产者在生产出可以消费... 阅读全文
posted @ 2014-08-10 22:09 积淀 阅读(353) 评论(0) 推荐(0)
摘要:1.wait和notify,notifyAll:wait和notify,notifyAll是Object类方法,因为等待和唤醒必须是同一个锁,不可以对不同锁中的线程进行唤醒,而锁可以是任意对象,所以可以被任意对象调用的方法,定义在Object基类中。wait()方法:对此对象调用wait方法导致本线... 阅读全文
posted @ 2014-08-09 22:55 积淀 阅读(462) 评论(0) 推荐(0)
摘要:死锁:是两个或者两个以上的线程被无限的阻塞,线程之间互相等待所需资源。线程死锁产生的条件:当两个线程相互调用Join()方法。当两个线程使用嵌套的同步代码块的时候,一个线程占用了另一个线程的锁,互相等待阻塞,就有可能产生死锁。下面看代码:代码1:死锁的案例package com.lp.ecjtu.T... 阅读全文
posted @ 2014-08-09 11:20 积淀 阅读(219) 评论(0) 推荐(0)
摘要:1.验证同步函数使用的锁----普通方法使用的锁思路:创建两个线程,同时操作同一个资源,还是用卖票的例子来验证。创建好两个线程t1,t2,t1线程走同步代码块操作tickets,t2,线程走同步函数封装的代码操作tickets,同步代码块中的锁我们可以指定。假设我们事先不知道同步函数用的是什么锁;如... 阅读全文
posted @ 2014-08-08 21:07 积淀 阅读(315) 评论(0) 推荐(0)
摘要:Activity和Servlet一样,都用了回调机制。我们通过类比servlet来学习Activity。当一个servlet开发出来之后,该servlet运行于Web服务器中。服务器何时创建servlet的实例,何时调用servlet的方法向用户生成响应,程序员无法控制,这种回调由服务器自行决定。A... 阅读全文
posted @ 2014-08-08 10:21 积淀 阅读(310) 评论(0) 推荐(0)
摘要:google android的新的开发工具,打开以后没有代码自动提示功能,下面对ADT工具的一些配置:1.设置代码的字体设置JAVA文件代码的字体:我这里设置的14 常规。2.设置XML文件中代码的字体:3.设置代码编辑器的背景颜色色调85、饱和度90、亮度205RGB:199、237、204自定义... 阅读全文
posted @ 2014-08-07 21:51 积淀 阅读(372) 评论(0) 推荐(0)
摘要:在android小程序的开发过程中,使用eclipse中的虚拟机进行程序开发速度较慢,用真机开发可以显著提高调试的速度。 这里我用的操作系统是win7专业版,手机型号HM1S; 进行USB调试的主要步骤包括:将手机设置为USB调试模式,在windows系统上安装驱动,在adt中进行设置。下面详细描述... 阅读全文
posted @ 2014-08-07 11:48 积淀 阅读(590) 评论(0) 推荐(0)
摘要:二分查找法与我们在孩童时期玩过的猜数的游戏一样,这个游戏里一个朋友会让你猜他正想的一个1至100的数,当你猜了一个数后,他会告诉你三种选择的一个:你猜的比她想的大,或小,或猜中了。为了能用最少的次数猜中,必须从50开始猜,如果她说你猜的太小,则推出那个数在51-100之间,所以下一次猜75((51... 阅读全文
posted @ 2014-08-07 10:19 积淀 阅读(513) 评论(0) 推荐(0)
摘要:这里举个例子讲解,同步synchronized在什么地方加,以及同步的前提:* 1.必须要有两个以上的线程,才需要同步。* 2.必须是多个线程使用同一个锁。* 3.必须保证同步中只能有一个线程在运行,锁加在哪一块代码那么我们要思考的地方有:1.知道我们写的哪些是多线程代码 2.明确共享数据 3.明确... 阅读全文
posted @ 2014-08-06 23:01 积淀 阅读(304) 评论(0) 推荐(0)
摘要:上一节售票系统中我们发现,打印出了错票,0,-1,出现了多线程安全问题。我们分析为什么会发生多线程安全问题? 看下面线程的主要代码: @Override public void run() { // TODO Auto-generated method stub while(true){ if(ti 阅读全文
posted @ 2014-08-06 17:43 积淀 阅读(548) 评论(0) 推荐(0)
摘要:总结:实现Runnable接口比继承Thread类更有优势: 1.因为java只能单继承,实现Runnable接口可以避免单继承的局限性 2.继承Thread类,多个线程不能处理或者共享同一个资源,但是实现Runnable接口可以处理同一个资源。 下面我们做个测试:验证下。车站的售票系统售票的例子, 阅读全文
posted @ 2014-08-06 14:48 积淀 阅读(1095) 评论(0) 推荐(0)
摘要:创建线程的第二中方式:/*** 步骤: 1定义类实现Runnable接口 2.实现Runnable接口中的run方法。 3.通过Thread类建立线程对象,并将Runnable 接口的子类对象作为实际参数传给Thread类的构造方法、 4.调用Thread类的start方法开启线程,并调用Runn... 阅读全文
posted @ 2014-08-06 10:49 积淀 阅读(525) 评论(0) 推荐(0)
摘要:创建线程的第一种方式: / * 步骤: * 1.继承Thread类 * 2. 重写Thread的run方法 * 目的:将自定义的代码存储在run方法中,运行自定义线程 * start 1.启动线程,2调用run方法 * 为什么要覆盖run方法? * Threa... 阅读全文
posted @ 2014-08-06 09:48 积淀 阅读(333) 评论(0) 推荐(0)
摘要:java.io 类 RandomAccessFilejava.lang.Object java.io.RandomAccessFile1.该类不是IO流中的子类。2.该类既能读又能写。3.该对象内部分装了一个字节数组,通过指针可以操作数组中的元素。4.其实该对象就是将字节输入流和输出流进行了封... 阅读全文
posted @ 2014-08-05 18:37 积淀 阅读(391) 评论(0) 推荐(0)
摘要:/*** * 一:理解序列化反序列化及其应用* 序列化:把堆内存的对象转化成字节流的过程。* 反序列化:把字节流序列恢复重构成对象的过程。* 对象的序列化的用途:1.把对象的字节序列持久化,保存到硬盘上,通常是文件当中。* 2.将对象变成字节流在网络上传输* 在很多应用当中,需要对某些对象进行序列化... 阅读全文
posted @ 2014-08-05 17:18 积淀 阅读(297) 评论(0) 推荐(0)
摘要:/*** File文件综合应用* 需求:获取指定目录下面,指定扩展名的文件,将文件的绝对路径写到文本文件当中。* * 思路:1.需要深度遍历。--递归* 2.遍历的过程中过滤指定扩展名的文件--过滤器FileNameFilter,将文件存入容器中* 3.将容器中的内容遍历,写入到指定文件中**/代码... 阅读全文
posted @ 2014-08-03 10:35 积淀 阅读(2114) 评论(0) 推荐(0)
摘要:/*** 深度删除一个带内容的目录* 原理:必须从里往外删除,需要深度遍历* @author Administrator**/public class FileDeleteList { /** * @param args */ public static void mai... 阅读全文
posted @ 2014-08-02 14:53 积淀 阅读(328) 评论(0) 推荐(0)
摘要:FilenameFilter和FileFilter都是用来过滤文件,例如过滤,以.jpg或者.java结尾的文件,通过看他们的源码:通过使用File类中String[] list(FilenameFilter filter)或者public File[] listFiles(FileFilter ... 阅读全文
posted @ 2014-08-02 12:26 积淀 阅读(12723) 评论(1) 推荐(2)
摘要:代码如下:package com.lp.ecjtu.File.FileDeepList;import java.io.File;public class FileDeepList { /** * @param args */ public static void main... 阅读全文
posted @ 2014-08-02 11:18 积淀 阅读(354) 评论(0) 推荐(0)
摘要:File类是对文件系统中文件以及目录(文件夹)进行封装的对象,可以通过面向对象的思想来操作文件和目录(文件夹)。File类保存文件或目录的各种元素的信息,包括文件名,文件长度,最后修改日期,是否可读,获取当前文件的路径名,判断指定文件是否存在,获得当前文件的列表,创建、删除文件目录等方法。 /*... 阅读全文
posted @ 2014-08-02 11:05 积淀 阅读(320) 评论(0) 推荐(0)
摘要:/**java.lang.Object |--java.util.Dictionary |--java.util.Hashtable |--java.util.Properties* @author Administrator*Properties集合: * 特点: * 1,该集合中的键和值... 阅读全文
posted @ 2014-08-01 11:26 积淀 阅读(444) 评论(0) 推荐(0)