易截截图软件、单文件、免安装、纯绿色、仅160KB

Effective Java 学习笔记(2)

 有时,我们在写一个构造函数时,经常因为它包含众多的参数而苦恼,这时可以考虑用Builder模式来创建对象。
如,我们要设计一个营养成份的类,包含能量,蛋白质,脂肪,钙,铁,锌,维生素A, 维生素B1 ... 等,但在构造的时候,不一定每次都需要这些参数,如钙,铁,锌和维生素等是可选的,为了适应多种可能的搭配,比较原始的办法就是采用telescoping constructor模式,例子如下。
public class Nutrition
{
          private int calories;
          private int protein;
          private int fat;
          private int ca;
          private int fe;
          private int Va;
          private int Vb;
          ...
          public Nutrition(int cal, int pro){...}
          public Nutrition(int cal, int pro, int fat){...}
          public Nutrition(int cal, int pro, int fat, int ca){...}
          public Nutrition(int cal, int pro, int fat, int ca, int fe){...}
          public Nutrition(int cal, int pro, int fat, int ca, int fe, int ){...}
          public Nutrition(int cal, int pro, int fat, int ca, int fe, int Va){...}
           .......
}
这种方法的缺点很明显,一个函数的参数一旦超过3个,用户就很容易把顺序搞混,而更杯具的是这种情况编译器无法识别,非常不易查错。
第二种方法是JavaBean模式。
         
public class Nutrition
{
 


相关文档:

Java equals

boolean java.lang.Object.equals(Object obj)
Indicates whether some other
object is "equal to" this one.
The equals method implements an
equivalence relation on non-null object references:
It is reflexive: for
any non-null reference value x, x.equals(x) should return true.
It ......

Java 环境变量的配置

在java环境变量配置上抓住 “两添加,以修改就OK了”
按住windows键+PauseBreak键直接在高级中的环境变量处设置
1.添加
CLASSPATH
.;C:\Program Files\Java\jdk1.6.0_02\lib;(这是你Jdk安装的目录下的包)
 
2.添加
JAVA_HOME
C:\Program Files\Java\jdk1.6.0_02
3.修改
修改path变量
C:\Progra ......

【转】给Java包取一个独一无二的名字

来源:http://bbs.hackline.net/thread-3620-1-1.html
隐藏具体实现是Java语言的主要特点之一。正是因为这个原因,所以Java语言的移植性就特别好。如有个程序员编写了一个实现随机数的程序库,那么其他
程序开发人员只需要知道这个程序库需要传入那些参数,就可以使用这个类。现在无论是网上还是平时的工作中,有很多现成 ......

Java正则验证

import java.util.regex.*;

public final class RegExpValidator
{
/**
* 验证邮箱
* @param 待验证的字符串
* @return 如果是符合的字符串,返回 <b>true </b>,否则为 <b>false </b>
*/
public static boolean isEmail(String str)
{ ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号