摘要: 模板方法模式,当我们要完成在某一细节层次一致的一个过程或者一系列步骤,但其个别步骤在更详细的层次上的实现有可能不同时,我们通常考虑使用模板方法模式来处理。 我们来看模板方法模式的定义,定义一个操作中算法的骨架,而将一些步骤延迟到子类中,模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 下面是具体的代码块: 1 package template; 2 3 public abstract class AbstractClass { 4 public abstract void primitiveOperation1(); 5 6 publ... 阅读全文
posted @ 2012-10-25 12:18 寒剑飘香 阅读(130) 评论(0) 推荐(0) 编辑
摘要: java“指针” Java语言的一个优点就是取消了指针的概念,但也导致了许多程序员在编程中常常忽略了对象与引用的区别,本文会试图澄清这一概念。并且由于Java不能通过简单的赋值来解决对象复制的问题,在开发过程中,也常常要要应用clone()方法来复制对象。本文会让你了解什么是影子clone与深度clone,认识它们的区别、优点及缺点。看到这个标题,是不是有点困惑:Java语言明确说明取消了指针,因为指针往往是在带来方便的同时也是导致代码不安全的根源,同时也会使程序的变得非常复杂难以理解,滥用指针写成的代码不亚于使用早已臭名昭著的"GOTO"语句。Java放弃指针的概念绝对是 阅读全文
posted @ 2012-10-25 11:28 寒剑飘香 阅读(267) 评论(0) 推荐(0) 编辑
摘要: 今天我们要学习的第一种设计模式是原型模式。 比如,我们需要三份同样的简历,简历里面包含姓名,性别,工作经历,我们可能会实例化三个简历对象。但是如果我们需要100份简历呢?我们是不是还得实例化100个简历对象呢?这样做好像有点麻烦。 那么就引入原型模式的概念了,原型模式,用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 而在java中,一个对象如果想要被克隆,需要实现Clonable接口,并复写clone()方法。 要被克隆的对象类: 1 package prototype; 2 3 public class ConcretePrototype implemen... 阅读全文
posted @ 2012-10-25 11:27 寒剑飘香 阅读(164) 评论(0) 推荐(0) 编辑
摘要: SELECT 语句的用途,即帮助取出数据。SELECT 大概是 SQL 语言中最常用的语句,而且怎样使用它也最为讲究;用它来选择记录可能相当复杂,可能会涉及许多表中列之间的比较。本节介绍Select语句关于查询的最基本功能。SELECT 语句的语法如下:SELECT selection_list选择哪些列FROM table_list从何处选择行WHERE primary_constraint行必须满足什么条件GROUP BY grouping_columns怎样对结果分组HAVING secondary_constraint行必须满足的第二条件ORDER BY sorting_colum.. 阅读全文
posted @ 2012-10-24 22:43 寒剑飘香 阅读(226) 评论(0) 推荐(0) 编辑
摘要: Java线程:线程的同步与锁一、同步问题提出线程的同步是为了防止多个线程访问一个数据对象时,对数据造成的破坏。例如:两个线程ThreadA、ThreadB都操作同一个对象Foo对象,并修改Foo对象上的数据。publicclassFoo {privateintx = 100;publicintgetX() {returnx;}publicintfix(inty) {x = x - y;returnx;}}publicclassMyRunnableimplementsRunnable {privateFoo foo =newFoo();publicstaticvoidmain(String[] 阅读全文
posted @ 2012-10-24 17:01 寒剑飘香 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 本文转自http://lavasoft.blog.51cto.com/62575/99153Java线程:线程状态的转换SCJP5学习笔记一、线程状态线程的状态转换是线程控制的基础。线程状态总的可分为五大状态:分别是生、死、可运行、运行、等待/阻塞。用一个图来描述如下:1、新状态:线程对象已经创建,还没有在其上调用start()方法。2、可运行状态:当线程有资格运行,但调度程序还没有把它选定为运行线程时线程所处的状态。当start()方法调用时,线程首先进入可运行状态。在线程运行之后或者从阻塞、等待或睡眠状态回来后,也返回到可运行状态。3、运行状态:线程调度程序从可运行池中选择一个线程作为当前 阅读全文
posted @ 2012-10-24 16:48 寒剑飘香 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 本文转自http://www.cnblogs.com/killbug/archive/2012/08/22/2651524.html扯淡:现在项目里的java代码,都是封装,封装,再封装。在没有空闲的赶工编码,几年后会感觉学不动,毕竟少了很多思考的时间。也基本不会去研究代码的底层实现。时间一长就会觉得自己什么也不会。一个大型的项目,一般不可能只用java实现,可能会用到C,C++,shell,python等等。单单一个web就要学很多,jsp,jquery,javascript,html,css,各种开源的不开源的框架,各种web服务器,数据库等等等。java程序员的确容易迷茫,但精通一样吧, 阅读全文
posted @ 2012-10-24 16:14 寒剑飘香 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 本文转自http://www.cnblogs.com/killbug/archive/2012/08/15/2640845.htmlIO入门代码阅读:字节流: 1 private void writeTxt(String path, String value) throws IOException{ 2 OutputStream fos = new FileOutputStream(path);//构造方法1 3 fos.write(value.getBytes()); 4 fos.close(); 5 } 6 private v... 阅读全文
posted @ 2012-10-24 16:03 寒剑飘香 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 本文转自http://www.cnblogs.com/killbug/archive/2012/08/09/2631061.html下面的这么多方法组建起来可以写出很多有用的功能了吧?为了很方便的代表文件的概念,以及存储一些对于文件的基本操作,在java.io包中设计了一个专门的类——File类。在File类中包含了大部分和文件操作的功能方法,该类的对象可以代表一个具体的文件或文件夹,所以以前曾有人建议将该类的类名修改成FilePath,因为该类也可以代表一个文件夹,更准确的说是可以代表一个文件路径。下面介绍一下File类的基本使用。 1、File对象代表文件路径File类的对象可以代表一个具 阅读全文
posted @ 2012-10-24 15:47 寒剑飘香 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等。 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作. 本文将对HTTP协议进行详细的实例讲解,内容较多,希望大家耐心看。也希望对大家的开发工作或者测试工作有所帮助。使用Fiddler工具非常方便地捕获HTTP Request和HTTP Response, 关于Fiddler工具的用法,请看我另一篇博客[Fiddler 教程]什么是HTTP协议协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则,超文本传输协 阅读全文
posted @ 2012-10-24 15:36 寒剑飘香 阅读(182) 评论(0) 推荐(0) 编辑