<一>   你不会有那美丽的相逢,除非之前,你能忍受等待的孤独.   你不会有那明朗的清晨,除非之前,你的睡梦能忍受黑夜的迷雾。   你也不会赢得任何东西,除非你敢于投下赌注.   赌注,生命的赌注,就是你的脚步!   但是你不会找到路,除非你敢于迷路.   因为,只有让你迷路的地方,才是你真正的出路!               <二>   有多少次此刻的离别,就有多少次彼时的相逢.   有多少次此刻的酒醉,就有多少次彼时的痛醒.   所以你应该理解一个人的沉默,就是一个人最多的话语.   你也应该理解一个人的忧伤,之所以忧伤,一 ...
2008-04-09

工厂模式----易懂版(转)

关键字: 设计模式
一、引子 话说十年前,有一个暴发户,他家有三辆汽车——Benz奔驰、Bmw宝马、Audi奥迪,还雇了司机为他开车。不过,暴发户坐车时总是怪怪的:上Benz 车后跟司机说“开奔驰车!”,坐上Bmw后他说“开宝马车!”,坐上Audi说“开奥迪车!”。你一定说:这人有病!直接说开车不就行了?! 而当把这个暴发户的行为放到我们程序设计中来时,会发现这是一个普遍存在的现象。幸运的是,这种有病的现象在OO(面向对象)语言中可以避免了。下面就以 Java语言为基础来引入我们本文的主题:工厂模式。 二、分类 工厂模式主要是为创建对象提供过渡接口,以便将创建 ...
2008-04-05

程序员寓言

关键字: 娱乐
写道 一只壁虎迷了路,这时正好有一条大鳄鱼远远地爬了过来,准备要一口吃掉它,情急之下,小壁虎上前一把抱住了鳄鱼的腿,大声喊:"妈妈!"大鳄鱼一愣,立即老泪纵横:"儿啊,才做半个月程序员,咋就瘦成这样了........
(1)所有数据都应该隐藏在所在的类的内部。   (2)类的使用者必须依赖类的共有接口,但类不能依赖它的使用者。   (3)尽量减少类的协议中的消息。   (4)实现所有类都理解的最基本公有接口[例如,拷贝操作(深拷贝和浅拷贝)、相等性判断、正确输出内容、从ASCII描述解析等等]。   (5)不要把实现细节(例如放置共用代码的私有函数)放到类的公有接口中。   如果类的两个方法有一段公共代码,那么就可以创建一个防止这些公共代码的私有函数。   (6)不要以用户无法使用或不感兴趣的东西扰乱类的公有接口。   (7)类之间应该零耦合,或者只有导出耦合关系。也即,一个类要么同另一个类毫无关系 ...
1.你需要精通面向对象分析与设计(OOA/OOD)、设计模式(GOF,J2EEDP)以及综合模式。 你应该十分了解UML,尤其是class,object,interaction以及statediagrams。 2.你需要学习JAVA语言的基础知识以及它的核心类库 collections, serialization, streams, networking, multithreading, reflection, event, handling, NIO, localization, 以及其他 3.你应该了解JVM,classloaders,classreflect,以及垃圾回收的基本 ...
熟练掌握开发工具 做为一名程序员至少熟练掌握两到三种开发工具的使用,这是程序员的立身之本,其中C/C++和JAVA是重点推荐的开发工具,C/C++以其高效率和高度的灵活性成为开发工具中的利器,很多系统级的软件还是用C/C编写。而JAVA的跨平台和与WEB很好的结合是JAVA的优势所在,而JAVA即其相关的技术集JAVA One很可能会成为未来的主流开发工具之一。其次,能掌握一种简便的可视化开发工具,如VB,PowerBuilder,Delphi,C Builder,则更好,这些开发工具减小了开发难度,并能够强化程序员对象模型的概念。另外,需要掌握基本的脚本语言,如shell,perl等,至少能 ...
2008-03-24

java解惑 - 漂亮的火花

关键字: 解惑
下面的程序用一个方法对字符进行了分类。这个程序会打印出什么呢? public class Classifier {     public static void main(String[] args) {         System.out.println(             classify('n') + classify('+') + classify('2')); &nbs ...
下面的程序从一个字节序列创建了一个字符串,然后迭代遍历字符串中的字符,并将它们作为数字打印。请描述一下程序打印出来的数字序列: public class StringCheese { public static void main(String[] args) { byte bytes[] = new byte[256]; for (int i = 0; i < 256; i++) bytes[i] = (byte)i; String str = new String(bytes); ...
2008-03-24

java解惑 - Hello world(续)

关键字: 解惑
面的是一个合法的Java程序吗?如果是,它会打印出什么呢? \u0070\u0075\u0062\u006c\u0069\u0063\u0020\u0020\u0020\u0020 \u0063\u006c\u0061\u0073\u0073\u0020\u0055\u0067\u006c\u0079 \u007b\u0070\u0075\u0062\u006c\u0069\u0063\u0020\u0020\u0020 \u0020\u0020\u0020\u0020\u0073\u0074\u0061\u0074\u0069\u0063 \u0076\u006f\u0069\u0 ...
2008-03-24

java解惑 - Hello world

关键字: 解惑
下面的程序是对一个老生常谈的例子做出了稍许的变化之后的版本。那么,它会打印出什么呢? /** * Generated by the IBM IDL-to-Java compiler, version 1.0 * from F:\TestRoot\apps\a1\units\include\PolicyHome.idl * Wednesday, June 17, 1998 6:44:40 o’clock AM GMT+00:00 */ public class Test{ public static void main(String[] args){ ...
justjavac
搜索本博客
存档
最新评论