摘要: /***@srchttp://eric-619.iteye.com/blog/693185*Object类的方法:*clone()*equals()*finalize()*hashCode()*toString()**1、equals()方法:*^equals方法强调比较的值的是否相等*==强调对象的地址是否相同*^s1和s2的值都保存在对内存中*s3和s4的值都保存在占内存的字符串缓冲池中,缓存池的分配原则是按值是否相同来分配。*^如果值相同则分在一起,指向他们的引用的hashCode()值也相同。如果不同,则不分在一起,也就不==了。*所以s3和s4是相同的两个引用,而s5和他们俩内存地址 阅读全文
posted @ 2011-11-30 23:34 啊孟 阅读(1534) 评论(0) 推荐(0) 编辑
摘要: 前言:本文是对Java集合框架做了一个概括性的解说,目的是对Java集合框架体系有个总体认识,如果你想学习具体的接口和类的使用方法,请参看Java API文档。一、概述数据结构对程序设计有着深远的影响,在面向过程的C语言中,数据库结构用struct来描述,而在面向对象的编程中,数据结构是用类来描述的,并且包含有对该数据结构操作的方法。在Java语言中,Java语言的设计者对常用的数据结构和算法做了一些规范(接口)和实现(具体实现接口的类)。所有抽象出来的数据结构和操作(算法)统称为Java集合框架(Java Collection Framework)。Java程序员在具体应用时,不必考虑数据结 阅读全文
posted @ 2011-11-30 23:06 啊孟 阅读(326) 评论(1) 推荐(0) 编辑
摘要: JUnit是一个开发源代码的Java测试框架,用于编写和运行可重复的测试。他是用于单元测试框架体系xUnit的一个实例(用于java语言)。它包括以下特性:1、用于测试期望结果的断言(Assertion)2、用于共享共同测试数据的测试工具3、用于方便的组织和运行测试的测试套件4、图形和文本的测试运行器JUnit最初是由Erich Gamma(GoF之一)和Kent Beck(xp和refactor的先驱之一)编写的. 需 要说明的是junit一般是用来进行单元测试的,因此需要了解被测试代码的内部结构(即所谓的白盒测试),另外junit是在xp编程和重构 (refactor)中被极力推荐使用的工 阅读全文
posted @ 2011-11-30 22:49 啊孟 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 编辑器加载中include指令,这种方式的引入属于静态导入,include行为,这种方式的导入属于动态的导入,这里涉及到一个jsp的原理上的问题。 当我在地址栏中输入一个jsp的地址的时候,点击回车,会提交一个请求给我的web容器(如:tomcat,resin)等,这个容器会把这个以jsp结尾的请求对应到一个jsp引擎(其实也是一个servlet)来处理,这个servlet一定会去先把要回应请求的jsp转义成为servlet(此时 include指令被解释执行),然后,把这个servlet编译为class文件,由虚拟机解释执行,处理用户的请求(此时include行为执行),然后再生成... 阅读全文
posted @ 2011-11-29 22:21 啊孟 阅读(674) 评论(0) 推荐(0) 编辑
摘要: import java.io.*;class putout{public void putout(int f,int x,int y){int i;int a[]= new int[40];System.out.println(" 日 一 二 三 四 五 六 "+" "+f+"月");for (i=0;i<x;i++){System.out.print(" "); }for(i=x;i<x+y;i++)a[i]=i-x+1;for(i=x;i<x+y;i++){if (i%7==0)System. 阅读全文
posted @ 2011-11-26 23:08 啊孟 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 第一,谈谈final, finally, finalize的区别。final?修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载finally?再异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块 阅读全文
posted @ 2011-11-24 23:29 啊孟 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 注意:document.getElementById(" ")得到的是一个对象,用alert显示得到的是“object”,而不是具体的值,它有value和length等属性,加上.value得到的才是具体的值!参考资料:1. document . getElementById的用法和DHTML.CHM的下载地址http://blog.sina.com.cn/u/4933092a010003k7今天在网络上查找document . getElementById的用法,如下:A:语法:oElement = document . getElementById ( sID )参数: 阅读全文
posted @ 2011-11-24 22:48 啊孟 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 值传递:方法调用时,实际参数把它的值传递给对应的形式参数,方法执行中形式参数值的改变不影响实际参数的值。引用传递:也称为传地址。方法调用时,实际参数的引用(地址,而不是参数的值)被传递给方法中相对应的形式参数,在方法执行中,对形式参数的操作实际上就是对实际参数的操作,方法执行中形式参数值的改变将会影响实际参数的值。下面举例说明:传值---传递基本数据类型参数publicclassPassValue{static void exchange(int a, int b){//静态方法,交换a,b的值int temp;temp = a;a = b;b = temp;}public static vo 阅读全文
posted @ 2011-11-22 00:35 啊孟 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 概要单例模式是最简单的设计模式之一,但是对于Java的开发者来说,它却有很多缺陷。在本月的专栏中,David Geary探讨了单例模式以及在面对多线程(multithreading)、类装载器(classloaders)和序列化(serialization)时如何处理这些缺陷。单例模式适合于一个类只有一个实例的情况,比如窗口管理器,打印缓冲池和文件系统,它们都是原型的例子。典型的情况是,那些对象的类型被遍及一个软件系统的不同对象访问,因此需要一个全局的访问指针,这便是众所周知的单例模式的应用。当然这只有在你确信你不再需要任何多于一个的实例的情况下。单例模式的用意在于前一段中所关心的。通过单例模 阅读全文
posted @ 2011-11-20 23:10 啊孟 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 从以上iBATIS的开发过程可以看出,它与Hibernate的开发过程是一一对应的,都是由映射文件和持久化类作为底层数据库的沟通接口,上层调用iBATIS或Hibernate的API来编写DAO和Service层。但是在实际的应用中,它们则拥有各自的特点,这也决定了它们适用的场合。(1)Hibernate的特点:Hibernate功能强大,数据库无关性好,O/R映射能力强,如果对Hibernate相当精通,而且对Hibernate进行了适当的封装,那么整个持久层代码会相当简单,需要写的代码很少,开发速度很快。Hibernate对数据库结构提供了较为完整的封装,Hibernate的O/R Map 阅读全文
posted @ 2011-11-17 22:24 啊孟 阅读(232) 评论(0) 推荐(0) 编辑