摘要:
几乎所有的都用过这个System类吧,因为大家学习的第一个语句大概就是 Java代码 packagejdk.lang;publicclassSystemInspection{publicstaticvoidmain(String[]args)throwsException{System.out.println(“HelloWorld”);}}本文将一一详解这个类的标准输入(in),输出(out)和错误流(err)使用和原理。先看一个更复杂的例子:Java代码 packagejdk.lang;publicclassSystemIOE{publicstaticvoidmain(String[]ar 阅读全文
摘要:
一个类的功能扩展可以有两种方式 :(1) 类的继承 ( 高耦合,会产生更多的子类,从而引起类的爆炸 )(2) 对象组合即装饰模式 ( 降耦,不会创造更多的子类 ) 动态的为对象添加功能) 所以类应该对扩展开放,对修改关闭 。 装饰者设计模式注意事项: (1)装饰者和被装饰者必须具有相同的超类型。(2) 装饰者即可以包装被装饰者,也可以包装装饰者。往往利用多层包装来达到目的。(3) 装饰者中组合了被装饰者对象(装饰类的关键特征)。使得我们能够通过嵌套装饰来动态扩展行为。四个概念:(1) 抽象的构件角色(Component): 它是一个接口,封装了将要添加的功能(方法)。 它相当于IO中的Inpu 阅读全文
摘要:
package filterdemo;import java.io.File;import java.io.FileFilter;import java.io.IOException;public class FilterDemo { public static void main(String args[]) throws IOException{ File f = new File("D:\\Temp"); FileFilter ff = new FileFilter() { @Over... 阅读全文
摘要:
转自:http://www.oschina.net/question/82993_75533在这篇文章中,我将告诉大家我对hashCode和equals方法的理解。我将讨论他们的默认实现,以及如何正确的重写他们。我也将使用Apache Commons提供的工具包做一个实现。目录:hashCode()和equals()的用法重写默认实现使用Apache Commons Lang包重写hashCode()和equals()需要注意记住的事情当使用ORM的时候特别要注意的hashCode()和equals()定义在Object类中,这个类是所有java类的基类,所以所有的java类都继承这两个方法。 阅读全文