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

Effective Java Item10

Effective Java 2nd Edition Reading Notes
Item10: Always override toString
总是覆盖toString方法
 
java.lang.Object的toString方法的说明为:
Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.
The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:
 getClass().getName() + '@' + Integer.toHexString(hashCode())
 
java.lang.Object的toString方法返回的是类的名字,加上@符号,然后是一个无符号的16进制数(对象的hash code值),这样的toString方法显然传达的信息还不够。而toString方法的说明中包含了“建议所有的子类都覆盖这个方法”。
 
toString方法在println,printf,字符串连接,以及assert断言中,以及在调试器中,都被调用。
 
toString方法应该包含所有对象的重要信息。
 
另外一个问题是:是否需要对toString返回的值进行指定格式。
指定格式的好处在于它可以做为一个标准,不会带有歧义,并且可读性好。这个返回值可以用于输入或者输出,持久化的可读对象(xml文件)。如果指定格式的话,最好再提供一个工厂类用于根据String构造实例。
指定格式的缺点在于它是和接口一样,一旦指定了,就不能改变,因为可能有外部使用它,一旦它改变了,外部代码将无法使用。
一旦需要指定格式,那么要准确的定义并进行文档注释:
/**
 * Returns the string representation of this phone number.
 * The string consists of fourteen characters whose format
 * is "(XXX) YYY-ZZZZ", where XXX is the area code, YYY is
 * the prefix, and ZZZZ is the line number.  (Each of the
 * capital letters represents a single decimal digit.)
 *
 * If any of the three parts of this phone numb


相关文档:

Java之static学习

对于学习static我们先来看两个例子:
//Example 1 Tst.java,no main() method
package com.blogchina.qb2049;
public class Tst
{
static { System.out.println("111111"); }
}
运行结果为: 111111
Exception in thread "main" java.lang.NoSuchMethodError: main
同样的道理看第二 ......

JAVA List to Array,Array to List

 1.List转换成为数组。(这里的List是实体是ArrayList)
调用ArrayList的toArray方法。
例:String[] arr = (String[])list.toArray(new String[size]);
2.数组转换成为List。
调用Arrays的asList方法。
例:List stooges = Arrays.asList("Larry", "Moe", "Curly"); ......

Java虚拟机几个命令行参数说明

一、运行class文件
执行带main方法的class文件,命令行为:
java <CLASS文件名>
注意:CLASS文件名不要带文件后缀.class
例如:
java Test
如果执行的class文件是带包的,即在类文件中使用了:
package <包名>
那应该在包的基路径下执行,命令行为:
java <包名>.CLASS文件 ......

Java虚拟机 和 java虚拟机下的进程

一、什么是Java虚拟机
     当你谈到Java虚拟机时,你可能是指:
     1、抽象的Java虚拟机规范
     2、一个具体的Java虚拟机实现
     3、一个运行的Java虚拟机实例
二、Java虚拟机的生命周期
     一个运行 ......

Oracle 与在Java中的链接

转帖处:http://dong-java.javaeye.com/blog/375150 
1。推荐使用Oralce比较新的10.2.0.3 JDBC Drivers。这个版本对比9.2的最大的好处是DriverManager.setLoginTimeout函数是起作用的。设置了这个参数,在恶劣的网络环境中就不会有连接数据库的函数长时间不返回的情况。
2。JDBC Developer!ˉs Guide and Refer ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号