1.关于equals(),所有的类都继承了Object类,继承的
hashcode(),toString(),equals()方法
  在Object类的源码中:
 public boolean equals(Object obj){
 	return (this == obj);
 }
 也就是说如果没有override掉对象的equals()方法,就调用对象的equals()实际上还是比较两个对象引用是否是同一个对象,比较的不是对象的内容。
	public boolean equals(Object obj){
		
		if(this == obj)
			return true;
		
		if(!(obj instanceof A))
			return false;
		
		A a = (A)obj;
		
		if(a.name.equals(this.name))
			return true;
		
		return false;
			
	}
2.Object中的toString()方法
   public String toString() {
	return getClass().getName() + "@" + Integer.toHexString(hashCode());
   }
   那么定义一个类时,可以override掉Object类的toString()方法.
3.String和StringBuffer
  String对象每次使用"+"改变它的内容时都会生成一个新的String对象
  而StringBuffer使用append()来append字符串,但是并不会生成新的StringBuffer.
  
  String a = "abc";
  String b = "abc";
  String的实现采用了类似于字符串池的概念,如果String a定义的变量只是指向字符串池中的某个字符串,那么也就可知,如果两个变量所赋值的字符串相同,如a,b;那么其实只需要在字符串池中存储一个"abc"就行了,此时也就可知a,b指向同一个字符串了。