Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ÉîÈëdz³öJava clone¼¼Êõ

¡¡ÕâÊÇclone¼¼Êõ½éÉܵĵÚһƪ¡£±¾ÆªÖ÷Òª½éÉܶÔÏóclone¼¼ÊõµÄ»ù±¾ÖªÊ¶¡£
Clone»ù±¾ÖªÊ¶´¢±¸
ÔÚJavaÀïÌáµ½clone¼¼Êõ£¬¾Í²»Äܲ»Ìájava.lang.Cloneable½Ó¿ÚºÍº¬ÓÐclone·½·¨µÄObjectÀà¡£ËùÓоßÓÐclone¹¦ÄܵÄÀà¶¼ÓÐÒ»¸öÌØÐÔ£¬ÄǾÍÊÇËüÖ±½Ó»ò¼ä½ÓµØÊµÏÖÁËCloneable½Ó¿Ú¡£·ñÔò£¬ÎÒÃÇÔÚ³¢ÊÔµ÷ÓÃclone£¨£©·½·¨Ê±£¬½«»á´¥·¢CloneNotSupportedExceptionÒì³£¡£ÏÂÃæÎÒÃÇͨ¹ý¶ÔObjectÀàµÄ²¿·ÖÔ´ÂëµÄ·ÖÎö£¬À´·¢ÏÖºÍÀí½âÕâÒ»ÌØÐÔ¡£Çë¿´JDKÖÐObject# clone()·½·¨µÄÔ´Â룺
/*
…………
* @return a clone of this instance.
* @exception? CloneNotSupportedException? if the object's class does not
*support the Cloneable interface. Subclasses
*that override the clone method can also
* throw this exception to indicate that an instance cannot
*be cloned.
* @see java.lang.Cloneable
*/
protected native Object clone() throws CloneNotSupportedException;
Õâ¶ÎÔ´ÂëµÄ@exception²¿·ÖµÄÃèÊöÄÚÈÝ֤ʵÁËÉÏÎĹØÓÚclone¶ÔÏóÌØÐÔÂ۶ϵÄÕýÈ·ÐÔ¡£ËüÃ÷È·Ö¸³ö¶ÔÏóÀà±ØÐëÖ§³ÖCloneable½Ó¿Ú£¬·ñÔò¼´Ê¹ÅÉÉúÀา¸ÇÁËObject#clone()·½·¨£¬Ò²Í¬Ñù»áÅ׳öCloneNotSupportedExceptionÕâ¸öÒì³£¡£¹ØÓÚ¸²¸Çclone()·½·¨£¬ºóÐøÎÄÕ½«»áÓÃרÃÅÆª·ù½øÐбȽÏÏêϸµÄ·ÖÎö.
ÔÚÉÏһƪÖУ¬½éÉÜÁËjavaÀïcloneµÄ»ù±¾ÖªÊ¶¡£±¾Æª½«×ÅÖØÃèÊöÈçºÎʵÏÖclone¡£
l cloneµÄʵÏÖ
1.ʵÏÖCloneable½Ó¿Ú
ͨ¹ýÉÏһƪµÄ½éÉÜ£¬ÎÒÃÇÖªµÀ£¬Ò»¸öÀàÈôÒª¾ß±¸clone¹¦ÄÜ£¬¾Í±ØÐëʵÏÖCloneable½Ó¿Ú¡£×öµ½ÕâÒ»²½£¬clone¹¦ÄÜÒѾ­»ù±¾ÊµÏÖÁË¡£Clone¹¦ÄܶÔÎÒÃÇÀ´Ëµ£¬×îÖ÷ÒªµÄ»¹ÊÇÒªÄܹ»Ê¹ÓÃËü¡£ÄÇôÎÒÃÇÈçºÎ²ÅÄÜʹÓÃclone¹¦ÄÜÄØ£¿´ð°¸ÊǸ²¸ÇObject#clone()·½·¨¡£
2. ¸²¸ÇObject#clone()·½·¨
ΪʲôÐèÒª¸²¸ÇObject#clone()·½·¨£¿ÕâÀïµÃÔٴδÓjdkÔ´Âë˵Æð¡£JDKÖÐObject# clone()·½·¨µÄÔ­ÐÍÊÇ£º
protected native Object clone() throws CloneNotSupportedException;
ÊÇ·ñ×¢Òâµ½£¬ÕâÀïclone()·½·¨ÐÞÊηûÊÇprotected£¬¶ø²»ÊÇpublic¡£ÕâÖÖ·ÃÎʵIJ»¿É¼ûÐÔʹµÃÎÒÃǶÔObject#clone()·½·¨²»¿É¼û¡£ÏàÐŶÁÕßÒÑÃ÷°×ΪʲôҪ¸²¸ÇObject#clone()·½·¨¡£¶øÇÒ£¬¸²¸ÇµÄ·½·¨µÄÐÞÊηû±ØÐëÊÇpublic£¬Èç¹û»¹±£ÁôΪprotected£¬¸²¸Ç½«±äµÃûÓÐʵ¼ÊÒâÒå¡£ÏÂÃæ¾ÙÒ»¸ö¾ßÓÐclone¹¦Äܵļòµ¥µÄÀý×Ó£º
/*
* ¾ßÓÐclone¹¦ÄܵÄÀàµÄÀý×Ó
*/
public class CloneableObjExampl


Ïà¹ØÎĵµ£º

java´úÂë»ñÈ¡Êý¾Ý¿âÁ¬½Ó²¢²Ù×÷Êý¾Ý¿âÓû§

 
ADFÖлñµÃÊý¾Ý¿âÁ¬½Ó£¬¶ÁÈ¡xmlÎļþµÄÊý¾Ý£¬²¢½«Æäдµ½Êý¾Ý¿âÖУº
public static void main(String[] argv) throws Exception {
       //»ñµÃÇý¶¯
        Class driverClass = Class.forName("oracle.jdbc.OracleDriver");
  &nb ......

[×ªÔØ]Java¿ª·¢×îÈÝÒ×·¸µÄ¼¸ÖÖ´íÎó

1.Duplicated Code
 
´úÂëÖØ¸´¼¸ºõÊÇ×î³£¼ûµÄÒìζÁË¡£ËûÒ²ÊÇRefactoringµÄÖ÷ҪĿ±êÖ®Ò»¡£´úÂëÖØ¸´ÍùÍùÀ´×ÔÓÚcopy-and-pasteµÄ±à³Ì·ç¸ñ¡£ÓëËûÏà¶ÔÓ¦OAOOÊÇÒ»¸öºÃϵͳµÄÖØÒª±êÖ¾¡£
 
2.Long method
 
ËüÊÇ´«Í³½á¹¹»¯µÄ“ÒŶ¾”¡£Ò»¸ö·½·¨Ó¦µ±¾ßÓÐ×ÔÎÒ¶ÀÁ¢µÄÒâͼ£¬²»Òª°Ñ¼¸¸öÒâͼ·ÅÔÚÒ»Æð¡£ ......

javaÖÐÈçºÎ°ÑÒ»¸öarray¸´ÖƵ½arrayListÀï

public static void  main(string[]  args)
{
     int[] arrayInt=new int[] {1,2,3,4,5}
     ArrayList  alist =ArrayList();
    //·½·¨Ò»
    foreach(int i in alist)
    {
 &nbs ......

ÔÚEclipseÖн«Java Projectת»»³ÉDynamic Web Project


±à¼­¹¤³ÌµÄ.projectÎļþ£º
Ìí¼Ó
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
µ½
<natures>

& ......

Java Concurrent°üѧϰ֮BlockingQueue

BlockingQueueÊÇÒ»¸ö½Ó¿Ú£¬Ëü´ÓQueue¼Ì³Ð¶øÀ´£¬
°üº¬ÁËQueueµÄËùÓй¦ÄÜ£¬²¢ÔÚQueueµÄ»ù´¡ÉÏÌṩÁË2¸öÐµĹ¦ÄÜ£º
    1. ¼ìË÷ÔªËØÊ±µÈ´ý¶ÓÁбäΪ·Ç¿Õ
    2. ´æ´¢ÔªËØÊ±µÈ´ý¿Õ¼ä±äµÃ¿ÉÓá£
 
ÏÂÃæ³­Â¼Ò»Ð©JDKÎĵµÖйØÓÚBlockingQueueµÄ½éÉÜ£º
BlockingQueue ¿ÉÒÔÊÇÏÞ¶¨ÈÝÁ¿µÄ¡£ËüÔ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ