Javaѧϰ·Ïß
ÏÈѧϰj2se
Ҫѧϰj2ee¾ÍÒªÏÈѧϰj2se£¬¸Õ¿ªÊ¼Ñ§Ï°j2seÏȽ¨Ò鲻ҪʹÓÃIDE£¬È»ºó½¥½¥µÄ¹ý¶Éµ½Ê¹ÓÃIDE¿ª·¢£¬±Ï¾¹ÓÃËü·½±ãÂѧϰj2seÍÆ¼öÁ½±¾Ê飬¡¶java2ºËÐļ¼ÊõÒ»¶þ¾í¡·£¬¡¶java±à³Ì˼Ïë¡·£¬¡¶javaģʽ¡·¡£ÆäÖС¶java±à³Ì˼Ïë¡·ÒªÑжÁ£¬¾«¶Á¡£ÕâÒ»¶Îʱ¼äÊÇ»ù±¾¹¦Ñ§Ï°£¬Ê±¼ä»áºÜ³¤£¬Ò²¿ÉẠ̈ܺܶ¬ÕâÒª¿´Ñ§Ï°Õß×ÔÉíˮƽ¶ø¶¨¡£
²»Òª±»IDE¾À²ø
ÔÚѧϰjavaºÍj2ee¹ý³ÌÖУ¬Äã»áÓöµ½Î廨°ËÃŵÄIDE£¬²»Òª±»ËûÃÇÃÔ»ó£¬Ñ§JAVAµÄʱºò£¬ÒªÑ§ÓïÑÔ±¾ÉíµÄ¶«Î÷£¬²»ÒªÌ«ÔÚÒâIDEµÄ¸½¼Ó¹¦ÄÜ£¬JAVA±à³ÌÔÚ²»Í¬IDEÖ®¼äµÄת»»ÊǺÜÈÝÒ׵쬹ýÓÚµÄÔÚÒâIDEµÄ¹¦ÄÜ·´¶øÈÝÒ×µ¢Îó¶ÔÓïÑÔ±¾ÉíµÄÀí½â¡£Ä¿Ç°Á÷ÐеÄIDEÓÐjbuilder£¬eclipseºÍeclipseµÄ¼ÓÇ¿°æWSAD¡£Ó̼̮äÖÐÒ»¸ö¾Í¿ÉÒÔÁË£¬ÍƼö´ÓeclipseÈëÊÖj2ee¡£ÒòΪJbuilder¸üÊʺÏÓÚдj2se³ÌÐò¡£
Ñ¡ÔñºÍѧϰ·þÎñÆ÷ʹÓÃÅäÖà =D R t -
µ±ÄãÓÐÁËj2seºÍIDEµÄ¾Ñéʱ£¬¿ÉÒÔ¿ªÊ¼j2eeµÄѧϰÁË£¬web·þÎñÆ÷£ºtomcat£¬ÎðÓ¹ÖÃÒÉ£¬tomcatΪѧϰweb·þÎñÊ×Ñ¡¡£¶øÓ¦Ó÷þÎñÆ÷ĿǰÖ÷ÒªÓÐÈý¸ö£ºjboss¡¢weblogic¡¢websphere¡£ÓкܶàÏîÄ¿¿ªÊ¼²ÉÓÃjboss£¬²¢ÇÒÓдóÁ¿µÄ¹«Ë¾¿ªÊ¼×öwebsphere»òweblogicÏòjbossÓ¦Ó÷þÎñÆ÷µÄÒÆÖ²£¨½ÚÊ¡³É±¾£©£¬ÕâÀïҪ˵µÄÊÇ£¬Ñ ......
13.2.1 ÍøÂç±à³Ì²½Öè
°´ÕÕÇ°ÃæµÄ»ù´¡ÖªÊ¶½éÉÜ£¬ÎÞÂÛʹÓÃTCP·½Ê½»¹ÊÇUDP·½Ê½½øÐÐÍøÂçͨѶ£¬ÍøÂç±à³Ì¶¼ÊÇÓɿͻ§¶ËºÍ·þÎñÆ÷¶Ë×é³É¡£µ±È»£¬B/S½á¹¹µÄ±à³ÌÖÐÖ»ÐèҪʵÏÖ·þÎñÆ÷¶Ë¼´¿É¡£ËùÒÔ£¬ÏÂÃæ½éÉÜÍøÂç±à³ÌµÄ²½Öèʱ£¬¾ùÒÔC/S½á¹¹Îª»ù´¡½øÐнéÉÜ¡£
˵Ã÷£ºÕâÀïµÄ²½ÖèʵÏÖºÍÓïÑÔÎ޹أ¬Ò²¾ÍÊÇ˵£¬Õâ¸ö²½ÖèÊÊÓÃÓÚ¸÷ÖÖÓïÑÔʵÏÖ£¬²»¾ÖÏÞÓÚJavaÓïÑÔ¡£
13.2.1.1 ¿Í»§¶ËÍøÂç±à³Ì²½Öè
¿Í»§¶Ë(Client)ÊÇÖ¸ÍøÂç±à³ÌÖÐÊ×ÏÈ·¢ÆðÁ¬½ÓµÄ³ÌÐò£¬¿Í»§¶ËÒ»°ãʵÏÖ³ÌÐò½çÃæºÍ»ù±¾Â߼ʵÏÖ£¬ÔÚ½øÐÐʵ¼ÊµÄ¿Í»§¶Ë±à³Ìʱ£¬ÎÞÂÛ¿Í»§¶Ë¸´ÔÓ»¹ÊǼòµ¥£¬ÒÔ¼°¿Í»§¶ËʵÏֵķ½Ê½£¬¿Í»§¶ËµÄ±à³ÌÖ÷ÒªÓÉÈý¸ö²½ÖèʵÏÖ£º
1¡¢ ½¨Á¢ÍøÂçÁ¬½Ó
¿Í»§¶ËÍøÂç±à³ÌµÄµÚÒ»²½¶¼Êǽ¨Á¢ÍøÂçÁ¬½Ó¡£ÔÚ½¨Á¢ÍøÂçÁ¬½ÓʱÐèÒªÖ¸¶¨Á¬½Óµ½µÄ·þÎñÆ÷µÄIPµØÖ·ºÍ¶Ë¿ÚºÅ£¬½¨Á¢Íê³ÉÒԺ󣬻áÐγÉÒ»ÌõÐéÄâµÄÁ¬½Ó£¬ºóÐøµÄ²Ù×÷¾Í¿ÉÒÔͨ¹ý¸ÃÁ¬½ÓʵÏÖÊý¾Ý½»»»ÁË¡£
2¡¢ ½»»»Êý¾Ý
Á¬½Ó½¨Á¢ÒԺ󣬾ͿÉÒÔͨ¹ýÕâ¸öÁ¬½Ó½»»»Êý¾ÝÁË¡£½»»»Êý¾ÝÑϸñ°´ÕÕÇëÇóÏìӦģÐͽøÐУ¬Óɿͻ§¶Ë·¢ËÍÒ»¸öÇ ......
µÚÒ»£¬Ì¸Ì¸final, finally, finalizeµÄÇø±ð¡£
¡¡¡¡µÚ¶þ£¬Anonymous Inner Class (ÄäÃûÄÚ²¿Àà) ÊÇ·ñ¿ÉÒÔextends(¼Ì³Ð)ÆäËüÀ࣬ÊÇ·ñ¿ÉÒÔimplements(ʵÏÖ)interface(½Ó¿Ú)?
¡¡¡¡µÚÈý£¬Static Nested Class ºÍ Inner ClassµÄ²»Í¬£¬ËµµÃÔ½¶àÔ½ºÃ(ÃæÊÔÌâÓеĺÜÁýͳ)¡£
¡¡¡¡µÚËÄ£¬&ºÍ&&µÄÇø±ð¡£
¡¡¡¡µÚÎ壬HashMapºÍHashtableµÄÇø±ð¡£
¡¡¡¡µÚÁù£¬Collection ºÍ CollectionsµÄÇø±ð¡£
¡¡¡¡µÚÆß£¬Ê²Ã´Ê±ºòÓÃassert¡£
¡¡¡¡µÚ°Ë£¬GCÊÇʲô? ΪʲôҪÓÐGC?
¡¡¡¡µÚ¾Å£¬String s = new String( "xyz ");´´½¨Á˼¸¸öString Object?
¡¡¡¡µÚÊ®£¬Math.round(11.5)µÈì¶¶àÉÙ? Math.round(-11.5)µÈì¶¶àÉÙ?
¡¡¡¡µÚʮһ£¬short s1 = 1; s1 = s1 + 1;ÓÐʲô´í? short s1 = 1; s1 += 1;ÓÐʲô´í?
¡¡¡¡µÚÊ®¶þ£¬sleep() ºÍ wait() ÓÐÊ²Ã´Çø±ð?
¡¡¡¡µÚÊ®Èý£¬JavaÓÐûÓÐgoto?
¡¡¡¡µÚÊ®ËÄ£¬Êý×éÓÐûÓÐlength()Õâ¸ö·½·¨? StringÓÐûÓÐlength()Õâ¸ö·½·¨?
¡¡¡¡µÚÊ®Î壬OverloadºÍOverrideµÄÇø±ð¡£OverloadedµÄ·½·¨ÊÇ·ñ¿ÉÒԸı䷵»ØÖµµÄÀàÐÍ?
¡¡¡¡µÚÊ®Áù£¬SetÀ ......
½ñÌìͬѧÎÊÎÒÒ»¸öJavaÎÊÌ⣬´úÂë½á¹¹ÈçÏ£º
Scanner scan = new Scanner(System.in);
scan.next();
scan.close();
scan = new Scanner(System.in);
scan.next();
µ±³ÌÐòÔËÐе½µÚÎåÐÐÊÇ»áÅ׳öjava.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:838)
at java.util.Scanner.next(Scanner.java:1347)
ÓÚÊǰ´ÕÕ´íÎóÕ»µÄ¹ì¼£²éÕÒÔÒò¡£
¼òÒªµÄ˵£¬¾ÍÊÇǰºóÁ½´ÎʵÀý»¯µÄ²ÎÊýSystem.inÊÇÓÃÒ»¸ö¶ÔÏó£¬ÊÇInputStreamReader¶ÔÏó£¬Ã¿¸ö¸Ã¶ÔÏó°üº¬Ò»¸ö
StreamDecoder ʵÀý sd
private final StreamDecoder sd;
¶øscan.close()·½·¨Îª
public void close() {
if (closed)
return;
if (source instanceof Closeable) {
try {
((Closeable)source).close();
} catch (IOException ioe) {
lastException = ioe;
}
}
......
JavaÖ´ÐÐstm.executeQuery(sql); ʱ×ÜÊÇÌáʾ£ºjava.sql.SQLException: ORA-00911: ÎÞЧ×Ö·û£¬ÅªÁ˰ëÌ컹Êdzö´í£¬ÎÞÄΣ¬ÄóöɱÊÖïµ£¬Googleһϣ¬Ôε¹£¬·¢ÏÖÎÒµÄString sql = “select detail from test.result where person_id = 4; "£¬Ã²ËÆÃ»´íÎó°É£¬½á¹ûÎÒÎÒ±ØÐëÈ¥µô×îºó·ÖºÅ£¬±¾À´ÊÇÏë¸ãµÃרҵµã£¬¾Í¼Û¼Ó¸ö·ÖºÅ¡«»»¢²»³É·´ÀàÈ®°¡:> ......
JavaÖ´ÐÐstm.executeQuery(sql); ʱ×ÜÊÇÌáʾ£ºjava.sql.SQLException: ORA-00911: ÎÞЧ×Ö·û£¬ÅªÁ˰ëÌ컹Êdzö´í£¬ÎÞÄΣ¬ÄóöɱÊÖïµ£¬Googleһϣ¬Ôε¹£¬·¢ÏÖÎÒµÄString sql = “select detail from test.result where person_id = 4; "£¬Ã²ËÆÃ»´íÎó°É£¬½á¹ûÎÒÎÒ±ØÐëÈ¥µô×îºó·ÖºÅ£¬±¾À´ÊÇÏë¸ãµÃרҵµã£¬¾Í¼Û¼Ó¸ö·ÖºÅ¡«»»¢²»³É·´ÀàÈ®°¡:> ......
±³¾°¼ò½é£ºKMPËã·¨ÓÃÀ´´¦Àí×Ö·û´®Æ¥ÅäµÄ¡£¸øÄãA,BÁ½¸ö×Ö·û´®£¬¼ì²éB´®ÊÇ·ñÊÇA´®µÄ×Ó´®£¬ÀàËÆÓÚJavaµÄString.indexOf("")¡£Ö®ËùÒÔ½Ð×öKMP£¬ÊÇÒòΪÕâ¸öËã·¨ÊÇÓÉKnuth¡¢Morris¡¢PrattÈý¸öÌá³öÀ´µÄ£¬È¡ÁËÕâÈý¸öÈ˵ÄÃû×ÖµÄÍ·Ò»¸ö×Öĸ¡£
ÔÀí½éÉÜ£ºÕÒµ½Æ¥Åäʧ°ÜʱµÄ×îºÏÊʵĻØÍËλÖ㬶ø²»ÊǼòµ¥µÄ»ØÍ˵½×Ó´®µÄµÚÒ»¸ö×Ö·û£¨³£¹æµÄö¾Ù²éÕÒ·½Ê½£¬ÊǼòµ¥µÄ»ØÍ˵½×Ó´®µÄµÚÒ»¸ö×Ö·û£¬½ÓÏÂÀ´×¼±¸Ð´Ò»ÆªKMPËã·¨µÄÐÔÄÜ·ÖÎöJavaʵÏÖʵÀý£©£¬¼´¿ÉÌá¸ß²éÕÒµÄЧÂÊ¡£Òò´ËΪÁËÕÒµ½Õâ¸öºÏÊʵÄλÖã¬ÏȶÔ×Ó´®Ô¤´¦Àí£¬´Ó¶øµÃµ½Ò»¸ö»ØÍËλÖõÄÊý×é¡£¹ý¶àµÄÀíÂ۾Ͳ»½éÉÜÁË¡£
×ÜÌå¶øÑԱȽϼòµ¥£¬KMPËãÒ»¸ö¾µäµÄËã·¨Àý×Ó£¬ºÜ¶à±ÊÊÔ¡¢ÃæÊÔÒ²»áÎÊÆð¡£ÏÖ×ܽáһϣ¬·ÅÔÚÕâÀ﹩´ó¼Ò²Î¿¼¡¢½»Á÷£¬Ï£Íû¶Ô´ó¼ÒÓÐËù°ïÖú£¬ÏÂÃæÖ±½Ó¸ø³öʵÏÖÀý×Ó£¬²âÊÔÓë·ÖÎöÒ²°üº¬ÆäÖС£
Ò»¡¢Ò»¸öÎļþÔ´´úÂë
KMP.java
Ô´´úÂëΪ£º
package algorithm.kmp;
/**
* KMPËã·¨µÄJavaʵÏÖÀý×ÓÓë²âÊÔ¡¢·ÖÎö
* @author ´ÞÎÀ±ø
* @date 2009-3-25
*/
public class KMP {
/**
* ¶Ô×Ó´®¼ÓÒÔÔ¤´¦Àí£¬´Ó¶øÕÒµ½Æ¥Åäʧ°Üʱ×Ó´®»ØÍ˵ÄλÖÃ
* ÕÒµ½Æ¥Åäʧ°ÜʱµÄ×îºÏÊʵĻØÍËÎ»Ö ......