Effective Java ѧϰ±Ê¼Ç(8)
µ±ÖØÔØequals·½·¨Ê±,×ñѹßÀý.
equals²»ÊÇÿ¸öÀ඼±ØÐëÖØÔØ,µ±ÒÔϼ¸¸öÌõ¼þÂú×ã,¿ÉÒÔ²»ÖØÔØequals.
1. ÀàµÄʵÀýÖ»ÓÐͬһ¸ö²Å±»ÅÐΪÏàµÈ. ÈçThreadÀà.
2. ²»ÓùØÐÄÁ½¸ö¶ÔÏóÊÇ·ñÂß¼ÏàµÈµÄʱºò,»òÊÇ˵±È½Ï¶ÔÏóûÓÐÒâÒå.
3.¸¸ÀàÒѾÖØÔØÁËequals,¶øÇÒ¸¸ÀàµÄequalsÒ²ÊÊÓÃÓÚ×ÓÀà,×ÓÀà¾Í²»ÓÃÖØÔØequals.
4.ÕâÊÇÒ»¸ö˽ÓÐÀà»òÊÇ°üÄÚ·ÃÎÊ,ÄãÈ·¶¨equals²»»á±»µ÷ÓÃ.
ÄÇʲôʱºòʹÓÃequalsÄØ,µ±Á½¸ö¶ÔÏóÖ®¼äÓÐÂß¼ÏàµÈµÄÒâÒåµÄʱºò,¶øÆ丸ÀಢûÓÐÖØÔØÊʺϵÄequalsµÄʱºò, »»¾ä»°Ëµ,Ò²¾ÍÊÇÊý¾ÝÀà. ÕâÖÖÀàÓбȽÏÖµµÄÐèÇó, ¶ø²»ÊǼòµ¥µÄÅжÏÊDz»ÊÇͬһ¸ö¶ÔÏó.
È»¶ø,¶ÔʵÀý»¯½øÐпØÖƵÄÊý¾ÝÀàÐͶÔÏó,Èçsingleton,²»ÓÃÖØÔØequals.
ÖØÔØҪעÒâÒÔϼ¸¸öÔÔò:
·´Éä,¶Ô³Æ,´«µÝ,Ò»ÖÂ
ÁíÍâ,¶ÔÓÚnull,Ò»¶¨Òª·µ»Øfalse.
¸ßЧµÄequals¿ÉÒԲο¼ÒÔϼ¸µã.
1. ÓÃ==ÅжÏÊDz»ÊÇͬһ¸öʵÀý.
2. ʹÓÃinstanceofÅжÏÊDz»ÊÇͬһ¸öÀàÐÍ.
3.Ç¿ÖÆת»¯³ÉÕýÈ·µÄÀàÐÍ.
4.¶Ôÿ¸öÓбȽÏÒâÒåµÄ³ÉÔ±±äÁ¿¶¼×÷¼ì²é.
5.µ±ÄãдÍêÖ®ºó,ÒªÎÊ×Ô¼º,Õâ¸öº¯ÊýÊDz»ÊǶԳƵÄ,¿É´«µÝµÄ,Ò»ÖµÄ.
дÍêequalsºó,ҪעÒâ:
1. ÔÚÖØÔØequalsºó,±ØÐëÒªÖØÔØhashCode.
2. ²»Äܼòµ¥µÄ±È½ÏÒ»¸öfieldÊDz»ÊÇÏàµÈ. Èç¶ÔFileÕâ¶ÔÀà,Èç¹ûÁ½¸ö¶ÔÏó´ò¿ªµÄÊÇÏàͬÄÚÈݵÄÎļþ,´Ëʱ²»Ó¦¸ÃÅжÏΪÏàͬ.
3.²»ÒªÓÃÁíÒ»¸öÀàÐÍÀ´´úÌæ²ÎÊýÖеÄObject,·ñÔòÕâ¾Í²»ÊÇÖØÔØ.
´íÎóÀý×Ó:
public boolean equals(MyClass o) {
...
}
ÔÚ±àÒëǰʹÓÃ@Override ¿ÉÒÔʹ±àÒëÆ÷ÔÚ²»ÕýÈ·µÄº¯ÊýÇ©Ãûʱ±¨´í.
±¾ÎÄÀ´×ÔCSDN²©¿Í£¬×ªÔØÇë±êÃ÷³ö´¦£ºhttp://blog.csdn.net/mutsinghua/archive/2010/01/23/5248724.aspx
Ïà¹ØÎĵµ£º
java socketͨÐÅ
TCP¿Í»§¶Ë£º
import java.net.*;
import java.io.*;
public class Client {
static Socket server;
public static void main(String[] args) throws Exception {
server = new Socket(InetAddress.getLocalHost(), 23);
BufferedReader in = new BufferedReader(new InputStreamReader ......
package com.yzy;
import java.util.regex.*;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
Pattern p=Pattern.compile("^[a-z]+");
Matcher m=p.matcher("a233"); //true
//Matcher m=p.matcher("2233") ......
×î½üÏëʵÏÖÒ»¸öÔÚ×Ô¼ºÊÖ»úÉϲéѯºº×ÖÆ´ÒôµÄ³ÌÐò£¬ÒѾ½øÐÐÁË´ó¸Å20ÌìÁË°É¡£µ«ÊÇÉÏÖܵÄʱºòÔÚNetbeans 6.8ÖÐÔËÐгÌÐò£¬ÔÚÊä³öÖÐÏÔʾµÄÊÇ“Starting emulator in execution mode”£¬Ä£ÄâÆ÷È´Æô¶¯²»ÆðÀ´¡£È¥²é¿´°²×°µÄJavaƽ̨£¬ÏÔʾÓÐ Java ME£¬³¢ÊÔ°ÑËüɾ³ýºó£¬»µÁË£¬ÔõÁËÒ²ÎÞ·¨ÔÙ´ÎÌí¼Ó£¬Ã÷Ã÷Ö¸¶¨ÁËĿ¼£¬È´ÌáÊ¾Õ ......
Java ÖÐÄÚ²¿¶¯Ì¬Àà(ûÓÐstatic)¹Ø¼ü×ÖºÍÄÚ²¿¾²Ì¬ÀàµÄ¾ÍÔÚÓÚÄÚ²¿¶¯Ì¬À಻Äܶ¨Ò徲̬±äÁ¿»òÊǾ²Ì¬·½·¨,Èç¹ûÒªÔÚÄÚ²¿ÀàÖÐʹÓþ²Ì¬³ÉÔ±,±ØÐ뽫ÀàÉùÃ÷Ϊ¾²Ì¬Àà.
ÄÚ²¿ÀàÖеľ²Ì¬·½·¨¿ÉÒÔ·ÃÎÊÍⲿÀàµÄ¾²Ì¬·½·¨ºÍ±¾ÀàÖеľ²Ì¬·½·¨»ò³ÉÔ±, ·Ç¾²Ì¬·½·¨¿ÉÒÔ·ÃÎÊÆäËûËùÓеķ½·¨»ò³ÉÔ± ......
ÔÚʵÏÖsingletonģʽʱ£¬ÎÒÃÇÓÐÒÔϼ¸ÖÖ·½·¨¡£
1. public static final ×ֶμÓÉÏprivate µÄ¹¹Ô캯Êý¡£
public class Singleton{
public static final Singleton INSTANCE = new Singleton();
& ......