Javaä¸ææç±»ï¼å æ¬ç¨æ·èªå·±å®ä¹çç±»ï¼é½èªå¨ç»§æ¿Objectç±»ï¼å³Objectç±»æ¯ææç±»çç¶ç±»ã
Objectä¸å¸¸ç¨æ¹æ³ï¼
public boolean equalsï¼Object objï¼
æ¯è¾å½å对象ä¸objæ¯å¦ä¸ºåä¸å¯¹è±¡ï¼è¿åå¼ï¼ture/false
public String toStringï¼ï¼
è¿åå½å对象çå符串表达形å¼
public native int hashCodeï¼ï¼ï¼
è¿å对象çHashç ãHashç æ¯æ å¿å¯¹è±¡çå¯ä¸å¼ï¼Hashç ç¸åç对象æ¯åä¸å¯¹è±¡
protected void finalizeï¼ï¼throws Throwable
对象éæ¯æ¶è¢«è°ç¨
以ä¸ä¸ä¸ªå½æ°ç¨äºæ§å¶çº¿ç¨
public final native void notifyï¼ï¼ï¼public final native void notifyAllï¼ï¼ï¼public final native void waitï¼ï¼ï¼
nativeåæ¹æ³æç±C++è¯è¨ç¼åçæ¹æ³ï¼Java解éå¨å¯¹å ¶è¿è¡è½¬ä¹åææ§è¡ã
â==âä¸equals()
"==" ä¸è¬ç¨äºåºæ¬æ°æ®ç±»åæ¯è¾ãè¥ç¨ä½ä¸¤ä¸ªå¼ç¨å¯¹è±¡æ¯è¾ï¼ä» å½å¼ç¨åéå¼ç¨åä¸ä¸ªå¯¹è±¡æ¶ï¼æè¿åtrue,å¦åfalseã
void EqualCompare()
{
String s1 = new String("Hello");
String s2 = new String("Hello");
String s3 = "Hello";
String s4 = "Hello";
//æªä½¿ç¨newï¼s4å¼ç¨æ¢åç对象ï¼ç¼è¯å¨å建对象ä¹åå
è¿è¡æ£æµ"Hello"æ¯å¦å·²ç»åå¨ï¼è¥åå¨ï¼åè¿åå对象çå¼ç¨ï¼
System.out.println(s1.equals(s2)); // true x1è¡
System.out.println(s1 ==s2); // false 两åéå¼ç¨ä¸å对象
System.out.println(s3.equals(s4)); //true 两åéå¼ç¨ç¸å对象
System.out.println(s3 ==s4); // true 两åéå¼ç¨ç¸å对象
}
æ¯è¾å¯¹è±¡æ¶ï¼ä¸è¬ç¨equal()æ¹æ³ã
Objectç±»æ¹æ³å®ä¹ï¼public boolean equalsï¼Object objï¼{ return ï¼this == obj);}
ä¸åçç±»å¯æ¹ä¾¿ç对该对象è¿è¡è¦çãString类就è¦çäºObjectç±»çequals()æ¹æ³ï¼æ以x1è¡è¾åºtrue.
a==b å¦æa,bå¼ç¨åä¸å¯¹è±¡ï¼åè¿åtrueï¼
a.equals(b) å¦æa对象å 容åb对象å 容ç¸åï¼åè¿åtrue
å¦ææªéè½½equalsï¼ï¼æ¹æ³ç类对象使ç¨è¯¥æ¹æ³ä¸å¦ä¸ä¸ªå¯¹è±¡è¿è¡æ¯è¾ï¼åè°ç¨Objectçequals()æ¹æ³ï¼ä»ç¶æ¯å¯¹è±¡çæ¯è¾ï¼è¿åå¼ä¸ºfalseã
参考资料:JDK文档