自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (2)
  • 收藏
  • 关注

原创 设计模式之Prototype(原型模式)对象创建型

意图原型模式用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。适用性当要实例化的类是在运行时刻指定时,例如,通过动态装载;或者为了避免创建一个与产品类层次平行的工厂类层次时;或者当一个类的实例只能有几个不同状态组合中的一种时。建立相应数目的原型并克隆它们可能比每次用合适的状态手工实例化该类更方便一些。

2014-05-13 16:08:45 720

原创 设计模式之builder(建造者模式)

builder(建造者模式)意图:将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。参与者:builder:给出一个抽象接口,以规范产品对象的各个组成成分的建造。这个接口规定要实现复杂对象的哪些部分的创建,并不涉及具体的对象部件的创建。ConcreteBuilder:实现Builder接口,针对不同的商业逻辑,具体化复杂对象的各部分的创建。 在建造过程完成

2014-05-13 15:43:36 826

原创 设计模式学习之 Factory method (工厂方法)

意图:定义一个创建对象的接口,让子类决定实例化哪一个类。Factory method使一个类的实例化延迟到了子类中。参与者:抽象工厂(Creator)角色:是工厂方法模式的核心,与应用程序无关。任何在模式中创建的对象的工厂类必须实现这个接口。具体工厂(Concrete Creator)角色:这是实现抽象工厂接口的具体工厂类,包含与应用程序密切相关的逻辑,并且受到应用程序调用以创建产品对

2014-05-13 15:25:42 684

原创 abstract factory(抽象工厂) 对象创建型模式

每一个模式都有其适用的场景,不乱套敢质疑是学习的根本。另外模式是抽象的,不是一蹴而就的。要多多回顾。abstract factory(抽象工厂)对象创建型模式一,意图:提供一个接口,让该接口负责创建一系列相关或者相互依赖的对象,无需指定它们具体的类。注意两点:1.一系列对象,也就是说产品不是一个,是多个,2.相关或者相互依赖,这些产品是相互相关,至于相关才能抽象出不同系列抽

2014-04-18 13:00:15 723

原创 通过抽象工厂模式再理解java的上转型

最近在学习抽象工厂模式的时候,看到了他的优点之一---分离了具体的类。抽象工厂模式帮助你控制一个应用创建的对象的类,因为一个工厂封装创建产品对象的责任和过程。它将客户和类的实现分离,客户通过他们的抽象接口操纵实例,产品的类名也在具体工厂的实现中被分离,它们不出现在客户代码中。一个抽象的工厂的接口public interface AbstractFactory{//具体方法略

2014-04-18 11:06:58 800

原创 java 构造函数的解析

java构造方法其实也是一种特殊的方法:1.构造方法名必须和类名相同2.构造方法没有返回值,不能定义为void类型3.一个对象可以有多个构造方法,也可以没有构造方法,假如没有则编译系统会自动插入一个无参数的默认构造器,这个构造器不执行任何代码。4.构造方法的主要作用是完成对象的初始化工作,它能够把定义对象时的参数传给对象的域。对于这些都是没有问题的,关键是加入继承关系后的构造函

2014-04-17 16:02:14 1127

原创 设计模式开篇

面向对象的设计模式出现初衷是为了减少开发过程中的重复作业,可以更加简单方便的复用成功的设计和体系结构。每一个设计模式的都有四个基本要素:模式名称(Pattern Name)一个助记名,它用一两个词来描述模式的问题、解决方案和效果。问题(Problem)描述了应该在何时使用模式。它解释了设计问题和问题存在的前因后果,它可能描述了特定的设计问题,如怎样用对象表示算法等。解决

2014-04-17 10:22:20 700

原创 java 在线人数的统计

通常的方法里面都是通过监听session的方法,进行对在线用户的统计。可是在浏览器关闭的时候,并不会调用sessionDistroyed方法,只有在显示的调用session.invalidate的时候或者session过期的时候,才会走进sessionDistroyed方法,如果session的时间太长,比如说设定为三个或者四个小时的时候,这种统计是不可靠的。另外一个需要注意的点时,相同的

2014-04-15 17:50:10 1226

原创 线程的interrupt中断和取消机制

每一个线程都有一个boolean类型的中断状态。当中断线程时,这个线程的中断状态将被设置为true,在Thread中,有以下三个方法中断线程和查询线程中断状态的方法。public class Tread{    public void interrupt(){....}    public boolean isInterrupted(){....}    public static

2014-04-08 15:40:33 2989

原创 构建高效且可伸缩的结果缓存引申的并发测试规范化

有些东西其实就是一层纸,当你偶然穿透的时候,就会豁然开朗,眼前一亮。以前总是对一些并发测试不感冒,有时候觉得我从下手的感觉。但是不自己亲自测试一把又觉得不放心,于是总是在Thread里面来来回回的修改,在run方法中做这个中修改,总是乱乱的感觉。今天突然从别人的代码中顿悟了,体系终于明朗了。我以构建高效且可伸缩的结果缓存为例,希望给大家启示。// 定义泛型计算接口public

2014-04-02 15:25:59 714

原创 java switch语法总结

面试的时候总是冷不丁的来一个,Switch里面表达式支持String吗?支持double吗?说实话有些东西确实是模模糊糊,今天有空就整理一下。第一,支持的数据类型: switch 传入的是整数类型的变量,因此支持 byte,short,int,char类型+枚举类型。另外,现在最新的jdk7里面已经做了修改,可以支持String类型了。再有这个问题的时候,我们可以说YES了。第二,执行

2014-04-01 17:40:39 1577

转载 并发中的信号量Semaphore

在操作系统中,信号量是个很重要的概念,它在控制进程间的协作方面有着非常重要的作用,通过对信号量的不同操作,可以分别实现进程间的互斥与同步。当然它也可以用于多线程的控制,我们完全可以通过使用信号量来自定义实现类似Java中的synchronized、wait、notify机制。Java并发包中的信号量Semaphore实际上是一个功能完毕的计数信号量,从概念上讲,它维护了一个许可集合,对控制一定

2014-03-31 16:48:58 931

原创 通过闭锁方式实现多线程同时并发测试

闭锁是一种同步工具类,可以延迟线程的进度直到其达到终止状态。形象一点就是,闭锁就是一扇关闭的大门,在闭锁达到结束条件之前,这扇门是关闭的,没有任何线程可以通过。而一旦条件达到,就像开闸泄洪一样,万马奔腾,瞬间达到高并发。在此我希望模拟高并发的瞬间,而不是依次的启动线程,让其相对依次的不可控执行。当然,这只是一种使用的方法,更多的使用闭锁可以确保某些活动直到其他活动都完成后才继续执行。Count

2014-03-31 11:44:45 1664

原创 从多线程安全角度看public修饰符的使用

对于java的修饰符,无外乎讲的都是调用的范围讲解,其实每一个简单的背后都还是有很多的细节可以深究学习的。public,protected,default,private,这四种级别的修饰符都可以用来修饰类、方法和字段。                 包外         子类        包内      类内public       yes          yes   

2014-03-17 16:04:26 1050

原创 java中值传递和引用传递辨析

说来惭愧,舍友的老婆学java,让咱给指导一下,结果出丑了。就起原因基础知识不扎实,也罢,努力吧,骚年。有人说java中只有值传递,没有引用传递。有人持反对意见,反正各自有各自的理论,其实这都不重要,重要的是理解其中的原理,没有必要抠字眼。public class ThisEscape {    public static void main(String[] args) {

2014-03-13 18:03:44 755

原创 局部变量和全局变量的作用域

java中的作用域:指可访问变量的一段代码,在程序中不同的地方声明的变量具有不同的作用域,例如:局部变量,全局变量等。局部变量:作用在它定义的方法或者方法里面的程序块变量。只能作用在方法里面或者方法里面的程序块里面。局部变量必须初始化,否则使用时编译会出错。全局变量:分为实例变量和类变量。区别在于类变量使用static关键字修饰,作用域是类范围的,所有该类的实例都可以共同使用这个变量,实例

2014-03-13 16:58:54 3984

原创 内部可变状态escape实例

在高并发编程中,作者举了一个内部可变状态escape的例子,不是很理解,自己又测试了一下,跟大家共享一下。class UnsafeStates {private String[] states = new String[] {"AK","AL"};public String[] getStates(){    return states;}}public class U

2014-03-13 11:49:40 761

原创 java线程的join,wait,notify深入理解

对于thread的理解,一直停留在基本层面,想着加强一下理解。Ok,问题总是有的,当然收获也是美滋滋的。先从一下demo开始lz的探索之旅,一步步揭开那神秘的面纱。public class JoinTest implements Runnable{            public static int a = 0;        public void run() {

2014-02-20 11:56:25 3866 4

原创 ExecutorService子线程返回值获取和exception捕获

最近在项目中需要使用多线程的并发来处理数据,刚开始希望使用static关键字来控制总的请求数,通过加减计数来进行数据请求的调度,本来并发量就不是很高,可是在实际的实验环境中,因为不能很好的控制请求的先后顺序,达到FIFO的要求,所以准备改善优化一下。对于线程池的使用不是很熟悉,通过网上的一些实例,结合自己的实际需求,对现成的一个实例,进行了优化,希望给各位有新的启发。根据需求,主要做两方面的改

2014-02-18 18:06:55 3878

Authorware_2 学习

Authorware_2的具体学习操作,手把手学Authorware_2的步骤。。

2010-05-26

ipv6 资料包以及ppt课件

对ipv6的具体介绍,主要是课件的学习,ppt

2010-05-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除