自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(36)
  • 资源 (13)
  • 收藏
  • 关注

转载 Trap includes Interrupt and Exception

Trap DispatchingInterrupts and exceptions are operating system conditions that divert the processor to code outsidethe normal flow of control. Either hardware or software can detect them. The term tra

2009-06-15 22:02:00 1375

原创 How to write effective Test cases, procedures and definitions

Writing effective test cases is a skill and that can be achieved by some experience and in-depth study of the application on which test cases are being written.Here I will share some tips on how to

2009-03-15 17:00:00 816

原创 架构师书单

 http://blog.csdn.net/calvinxiu/archive/2007/03/06/1522032.aspx

2009-03-15 00:17:00 689

原创 Precompiled header

OverviewIn computer programming, a pre-compiled header is a technique used by some C or C++ compilers to reduce compilation time.In the C and C++ programming languages, a header file is a file who

2009-02-23 20:18:00 2128

转载 Multi-Byte Character Set & Use Unicode Character Set

所有的   string   类都是以C-style字符串为基础的。C-style   字符串是字符数组。所以我们先介绍字符类型。这里有3种编码模式对应3种字符类型。第一种编码类型是单子节字符集(single-byte   character   set   or   SBCS)。在这种编码模式下,所有的字符都只用一个字节表示。ASCII是SBCS。一个字节表示的0用来标志SBCS字符串的结束。 

2009-02-17 17:52:00 9060

原创 C++私有继承和保护继承-转载

原文地址:(http://hellobmw.com/archives/cplusplus-private-and-protected-inheritance.html)及英文原文地址(http://www.parashift.com/c++-faq-lite/private-inheritance.html)。本文目录如何表达“私有继承” “私有继承”和“组合(Compositio

2008-09-16 08:47:00 7689 2

原创 C Sharp中的Virtual、Override和new关键词理解

在 C# 中,派生类可以包含与基类方法同名的方法。基类方法必须定义为 virtual。如果派生类中的方法前面没有 new 或 override 关键字,则编译器将发出警告,该方法将有如存在 new 关键字一样执行操作。如果派生类中的方法前面带有 new 关键字,则该方法被定义为独立于基类中的方法。如果派生类中的方法前面带有 override 关键字,则派生类的对象将调用该方法,

2008-07-18 20:20:00 3219

原创 我要学习的技术

 IBM 专题 Linux 文件系统 Linux 文件系统专题涵盖了 Linux 文件系统的架构、类型、日志、RAID、逻辑卷等方面的内容。 Linux 安全 Linux 系统安全专题从 Linux 内

2008-03-14 19:23:00 652

转载 Java的访问控制

默认的时候可以被同一类和它的子类访问,同一包和其他包中的类不可以访问;protected可以被同一类、子类和同一包中的类访问,其他包中的类不可以访问;protected access requires a little more elaboration. Suppose class A declares a protected field x and is extended by a cl

2007-10-11 20:40:00 773

转载 一个笔试题的分析

 题目:长度为n的整数数组,找出其中任意(n-1)个乘积最大的那一组的乘积,只能用乘法,不可以用除法。要求对算法的时间复杂度和空间复杂度作出分析,不要求写程序.既然题目不要求写程序,那我也不写了,就整理一下思路吧。可以按照下面几种情况考虑:1.   如果数组中有2个以上的0存在,那无论如何组合,最后的结果都是0;2.   如果有1个0,奇数个负数,那结果也是0;3.   如果有1个0,偶数个负数,

2007-10-04 23:56:00 1184

转载 分治法的绝妙应用-求bit翻转

假设原32bits 字符串丛左到右为 0 1 2 3 4 5。。。。。31 反转将第0位和第31位互换,第1位和第30位互换 最终结果 排序为31,30,29,28。。。。。。。。。1,0 反转n位=反转前面n/2位 >>n/2  ¦ 反转后面n/2位 unsigned intreverse(register unsigned int x){        register unsign

2007-09-29 21:39:00 1127

原创 How to Design a Good API and Why it Matters

近日设计RMI到Infiniband网络的接口,发现如何设计一个好的API是个很有挑战的问题。看了Joshua Bloch的ppt,做了一个总结API可以成为一个公司很大的资产,因为好的API是可以赢得客户的。而且一旦API被public就很难改变,这也是在Java的包中有很多Deprecated的类和方法,却不能直接被删除。好的代码应该是模块化的,每个模块都有自己的API;有用的模块

2007-09-11 10:45:00 2052

原创 javac的一个问题

 前段时间wan在写程序时碰到一个问题,没有解决,今天看到csdn上有人讨论。终于找到了问题的根了。源程序如下:package c05;public class PackagedClass...{        public PackagedClass()...{                System.out.println("cesdjf");        }} 

2007-09-07 22:23:00 966

原创 Exceptions In Java

Java中的异常分为两种类型:checked Exception和unchecked Exception。 Why did the designers decide to force a method to specify all uncaught checked exceptions that can be thrown within its scope? Any Exception t

2007-09-02 15:42:00 792

原创 Annotation优势何在

Annotation的三个应用分别是文档、编译检查和代码分析。作为生成文档,与javadoc相比有什么 不同和优势作为代码分析,与Java Reflection相比有什么不同

2007-08-24 20:46:00 928

原创 Java Annotation(since 5.0)

Annotation是从JDK5.0开始被引入的新特性。下面是Java文档中对该特性的一段描述:The Java platform has always had various ad hoc annotation mechanisms. For example the transient modifier is an ad hoc annotation indicating that a fi

2007-08-24 19:49:00 1372

转载 Find a way out of the ClassLoader maze

问题:何时使用Thread.getContextClassLoader()?    这是一个很常见的问题,但答案却很难回答。这个问题通常在需要动态加载类和资源的系统编程时会遇到。总的说来动态加载资源时,往往需要从三种类加载器里选择:系统或说程序的类加载器、当前类加载器、以及当前线程的上下文类加载器。在程序中应该使用何种类加载器呢?    系统类加载器通常不会使用。此类加载器处理启动应用程序

2007-08-02 15:10:00 1271

原创 Java Dynamic ClassLoading (II. diff)

如果不在构造函数中特别指定parent,用户自定义的类加载器的parent都是system classloader,可以通过getParent( ) 方法获取。1.  Class.forName( name )     public static Class forName(String className)                 throws ClassNotFoundEx

2007-08-02 12:16:00 1058

转载 Java Dynamic ClassLoading (I. intro)

1. JVM启动,会形成3个类加载器组成的初始化加载器层次结构:bootstap classloader (加载核心类)         ||extension classloader(系统属性java.ext.dirs指向的目录,如果有多个目录,往往只使用其中的一个)        ||system classloader   (加载属性java.class.path指向的目录,即CLASSPA

2007-08-02 12:08:00 1093

原创 引用等同性与对象等同性及对象复制

 在Java中判断一个对象是否“相等”,往往引入一些混乱的认识,本文就介绍一下,他们到底有什么差别。Java中的判等可以分为引用等同性和对象等同性两类。对于任何引用类型而言,该类型的某个变量所保存的值是一个引用,这个引用或者是特殊值null,或者是一个指向内存的指针。引用类型的赋值只是对引用的复制过程。因此,赋值过程不会创建一个新对象,只是为同一个对象创建了另外的一个名称(引用)而已。这一

2007-06-22 22:19:00 1158

转载 Java Reflection

简介Reflection 是Java被视为动态(或准动态)语言的一个关键性质。这个机制允许程序在运行时透过Reflection APIs取得任何一个已知名称的class的内部信息,包括其modifiers(诸如public, static 等等)、superclass(例如Object)、实现之interfaces(例如Cloneable),也包括fields和methods的所有信息,并可于

2007-06-19 15:43:00 920

原创 Java Dynamic Proxy

代理模式 代理模式的三个角色:1.  抽象主题角色:声明真实主题和代理主题的共同接口2.  代理主题:含有对真是主题的引用,可在任何时候操作真实主题3.  真是主题:实现逻辑的类类图如下:图1Java 动态代理从JDK1.3开始,Java就引入了动态代理的概念。动态代理(Dynamic Proxy)可以帮助你减少代码行数,真正提高代码的可复用度。 类图如下:

2007-06-01 10:27:00 1562

原创 RMI服务提供者注册服务的2种方式

第1种方式:1. 使用UnicastRemoteObject类的静态方法exportObject将一个Remote对象(服务提供者)export给RMI runtime,这样之后,才可以接受远程调用,并返回一个用于传送给client的stub对象Server obj = new Server();Hello stub = (Hello) UnicastRemoteObject.export

2007-05-30 20:03:00 1813

原创 java.rmi.server.codebase Property介绍

在使用RMI编程的时候,有时会出现如下的错误: java.rmi.ServerException: RemoteException occurred in server thread; nested excption is:        java.rmi.UnmarshalException: error unmarshalling arguments; nested excetion is

2007-05-30 18:55:00 6040 2

原创 RMI中使用工厂模式

工厂模式是类的创建模式,具体又分为简单工厂模式、工厂方法模式和抽象工厂模式。在这里就不详细介绍他们之间的区别。最近在看RMI时,发现工厂模式可以在RMI中使用,Sun的文档中专门对此做了介绍,下面我就引用这个例子,看看如何在RMI中使用工厂模式。前提:1. There are two remote interfaces that the client understands, Factor

2007-05-30 15:50:00 1159

原创 安装CodeViz

 使用的软件及安装顺序:1.  automake-1.9.6.tar.gz2.  gd-2.0.34.tar.bz23.  graphviz-2.2.1.tar.gz4.  codeviz-1.0.11.tar.gz(5.  gcc-3.4.6.tar.gz)具体的安装步骤就不说了,差不多都是configure;make;make install,需要注意的是graphviz的

2007-04-24 21:36:00 1888

原创 合成/聚合复用原则(Composite/Aggregate Reuse Principle )

合成/聚合复用原则的简单表述:要尽量使用合成/聚合,尽量不要使用继承。合成与聚合的区别: 合成与聚合都是关联的特殊种类。聚合表示拥有关系或者整体与部分的关系;合成表示一种更强的拥有关系,在一个合成关系里面,部分和整体的生命周期是一样的。一个合成部分只是属于一个合成关系,其多重性只能为1,而聚合则恰恰相反。在程序实现时都是使用类中一个变量的形式,由程序员区分二者。Is-A 和Has-

2007-04-23 22:53:00 1599

原创 接口隔离原则(Interface Segregation Principle)

接口隔离原则指出:CLIENTS SHOULD NOT BE FORCED TO DEPEND UPON INTERFACES THAT THEY DO NOT USE. 首先介绍接口污染。一个没有经验的设计师往往想节省接口的数目, 将一些功能相近或功能相关的接口合并, 并将这看成是代码优化的一部分。定义:从一个客户类的角度来讲:一个类对另外一个类的依赖性应当是建立在最小的接口上的。

2007-04-23 22:40:00 2341 1

原创 依赖倒转原则(The Dependency Inversion Principle)

 依赖倒转原则包括两个方面:A. HIGH LEVEL MODULES SHOULD NOT DEPEND UPON LOW LEVEL MODULES . BOTH SHOULD DEPEND UPON ABSTRACTIONS.B. A BSTRACTIONS SHOULD NOT DEPEND UPON DETAILS . DETAILS SHOULD DEPEND UPON ABSTRAC

2007-04-23 14:14:00 1773

原创 里氏代换原则(The Liskov Substitution Principle)

 里氏代换原则由Barbara Liskov于1988年提出,它最开始的定义如下:If for each object o1 of type S there is an object o2 of type T such that for all programs P defined in terms of T, the behavior of P is unchanged when o1 is s

2007-04-18 21:38:00 1928

原创 开闭原则(open-closed principle)

开闭原则是由Bertrand Meyer于1988年提出的,当时的描述如下:SOFTWARE ENTITIES(CLASSES,MODULES,FUNCTIONS, ETC.)SHOULD BE OPEN FOR EXTENSION , BUT CLOSED FOR MODIFICATION.Modules that conform to the open-closed principle hav

2007-04-18 20:39:00 1042

原创 一个程序的汇编分析

源程序:#include #include #include #include int main(void){        long id1,id2;        id1 = syscall(SYS_getpid);        printf("syscall(SYS_getpid)=%ld/n",id1);        id2 = getpid();        print

2007-04-16 09:10:00 905

原创 linux程序运行分析

 试验环境:[jackie@cluster3 cLearn]$ gcc -vReading specs from /usr/lib/gcc/i386-redhat-linux/3.4.6/specsConfigured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --ena

2007-04-15 22:49:00 1779

原创 Where storage lives

Registers. This is the fastest storage because it exists in a place different from that of other storage: inside the processor. However, the number of registers is severely limited, so registers

2007-04-03 21:01:00 755

转载 Java,天生丽质乱人眼 zz

Java在国外很多大学已经取代语言成为主要教授的语言了。       上面这句是话我在很多Java论坛上经常看到的,意为Java已经打倒了C的霸主地位,成为了编程界一统天下的强大语言了。        Java确实天生丽质,严谨的类库设计,多面手的应用和非凡的语法让我一接触到Java就被深深地迷住了。但是Java能够取代C这一点上,我还是不敢苟同。        C,何方神圣也?Unix,Linu

2007-04-03 08:55:00 1544

转载 (zz)What does volatile do?

This is probably best explained by comparing the effects that volatile and synchronized have on a method. volatile is a field modifier, while synchronized modifies code blocks and methods. So we can s

2007-03-28 15:27:00 767

Linux 防火墙 2007.sep版

Linux防火墙 Amozon 5星级评价

2009-10-28

正则表达式

正则表达式 chm格式的

2008-04-15

Unix编程常见问题解答

Unix编程常见问题解答

2008-02-19

Linux 2.6 调度系统分析

Linux 2.6 调度系统分析

2008-02-19

X Window 系統的基本概念

X Window 系統的基本概念

2008-01-24

Mastering.Regular.Expressions

Mastering.Regular.Expressions

2008-01-24

GCC--Complete Reference

GCC--Complete Reference

2008-01-24

Unix as an Application Program

Unix as an Application Program

2008-01-24

AJAX In Action

介绍Ajax的好书,不包含源代码,源代码另外下载

2008-01-24

串匹配算法

串匹配算法总结,非常全

2007-11-03

svn book

svn参考书,中文的很不错。

2007-10-11

Java memory Model

Java memory Model ppt

2007-10-11

Squid The Definitive Guide

十一Squid时的必备参考书

2007-10-11

空空如也

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

TA关注的人

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