Java NIO APIÏê½â
Java NIO APIÏê½â
ÔÚJDK 1.4ÒÔǰ£¬JavaµÄIO²Ù×÷¼¯ÖÐÔÚjava.ioÕâ¸ö°üÖУ¬ÊÇ»ùÓÚÁ÷µÄͬ²½£¨blocking£©API¡£¶ÔÓÚ´ó¶àÊýÓ¦ÓÃÀ´Ëµ£¬ÕâÑùµÄAPIʹÓúܷ½±ã£¬È»¶ø£¬Ò»Ð©¶ÔÐÔÄÜÒªÇó½Ï¸ßµÄÓ¦Óã¬ÓÈÆäÊÇ·þÎñ¶ËÓ¦Óã¬ÍùÍùÐèÒªÒ»¸ö¸üΪÓÐЧµÄ·½Ê½À´´¦ÀíIO¡£´ÓJDK 1.4Æð£¬NIO API×÷Ϊһ¸ö»ùÓÚ»º³åÇø£¬²¢ÄÜÌṩÒì²½(non-blocking)IO²Ù×÷µÄAPI±»ÒýÈë¡£±¾ÎÄ¶ÔÆä½øÐÐÉîÈëµÄ½éÉÜ¡£
NIO APIÖ÷Òª¼¯ÖÐÔÚjava.nioºÍËüµÄsubpackagesÖУº
java.nio
¶¨ÒåÁËBuffer¼°ÆäÊý¾ÝÀàÐÍÏà¹ØµÄ×ÓÀà¡£ÆäÖб»java.nio.channelsÖеÄÀàÓÃÀ´½øÐÐIO²Ù×÷µÄByteBufferµÄ×÷Ó÷dz£ÖØÒª¡£
java.nio.channels
¶¨ÒåÁËһϵÁд¦ÀíIOµÄChannel½Ó¿ÚÒÔ¼°ÕâЩ½Ó¿ÚÔÚÎļþϵͳºÍÍøÂçͨѶÉϵÄʵÏÖ¡£Í¨¹ýSelectorÕâ¸öÀ࣬»¹ÌṩÁ˽øÐÐÒì²½IO²Ù×÷µÄ°ì·¨¡£Õâ¸ö°ü¿ÉÒÔ˵ÊÇNIO APIµÄºËÐÄ¡£
java.nio.channels.spi
¶¨ÒåÁË¿ÉÓÃÀ´ÊµÏÖchannelºÍselector APIµÄ³éÏóÀà¡£
java.nio.charset
¶¨ÒåÁË´¦Àí×Ö·û±àÂëºÍ½âÂëµÄÀà¡£
java.nio.charset.spi
¶¨ÒåÁË¿ÉÓÃÀ´ÊµÏÖcharset APIµÄ³éÏóÀà¡£
java.nio.channels.spiºÍjava.nio.charset.spiÕâÁ½¸ö°üÖ÷Òª±»ÓÃÀ´¶ÔÏÖÓÐNIO API½øÐÐÀ©Õ¹£¬ÔÚʵ¼ÊµÄʹÓÃÖУ¬ÎÒÃÇÒ»°ãÖ»ºÍÁíÍâµÄ3¸ö°ü´ò½»µÀ¡£ÏÂÃæ½«¶ÔÕâ3¸ö°üÒ»Ò»½éÉÜ¡£
Package java.nio
Õâ¸ö°üÖ÷Òª¶¨ÒåÁËBuffer¼°Æä×ÓÀà¡£Buffer¶¨ÒåÁËÒ»¸öÏßÐÔ´æ·Åprimitive typeÊý¾ÝµÄÈÝÆ÷½Ó¿Ú¡£¶ÔÓÚ³ýbooleanÒÔÍâµÄÆäËûprimitive type£¬¶¼ÓÐÒ»¸öÏàÓ¦µÄBuffer×ÓÀ࣬ByteBufferÊÇÆäÖÐ×îÖØÒªµÄÒ»¸ö×ÓÀà¡£
ÏÂÃæÕâÕÅUMLÀàͼÃèÊöÁËjava.nioÖеÄÀàµÄ¹ØÏµ£º
Buffer
¶¨ÒåÁËÒ»¸ö¿ÉÒÔÏßÐÔ´æ·Åprimitive typeÊý¾ÝµÄÈÝÆ÷½Ó¿Ú¡£BufferÖ÷Òª°üº¬ÁËÓëÀàÐÍ£¨byte, char…£©Î޹صŦÄÜ¡£ÖµµÃ×¢ÒâµÄÊÇBuffer¼°Æä×ÓÀà¶¼²»ÊÇḬ̈߳²È«µÄ¡£
ÿ¸öBuffer¶¼ÓÐÒÔϵÄÊôÐÔ£º
capacity
Õâ¸öBuffer×î¶àÄܷŶàÉÙÊý¾Ý¡£capacityÒ»°ãÔÚbuffer±»´´½¨µÄʱºòÖ¸¶¨¡£
limit
ÔÚBufferÉϽøÐеĶÁд²Ù×÷¶¼²»ÄÜÔ½¹ýÕâ¸öϱꡣµ±Ð´Êý¾Ýµ½bufferÖÐʱ£¬limitÒ»°ãºÍcapacityÏàµÈ£¬µ±¶ÁÊý¾Ýʱ£¬limit´ú±íbufferÖÐÓÐЧÊý¾ÝµÄ³¤¶È¡£
position
¶Á/д²Ù×÷µÄµ±Ç°Ï±ꡣµ±Ê¹ÓÃbufferµÄÏà¶ÔλÖýøÐжÁ/д²Ù×÷ʱ£¬¶Á/д»á´ÓÕâ¸öÏÂ±ê½øÐУ¬²¢ÔÚ²Ù×÷Íê³Éºó£¬buffer»á¸üÐÂϱêµÄÖµ¡£
mark
Ò»¸öÁÙʱ´æ·ÅµÄλÖÃϱꡣµ÷ÓÃmark()»á½«markÉèΪµ±Ç°µÄpositionµÄÖµ£¬ÒÔºóµ÷ÓÃreset()»á½«positionÊôÐÔÉèÖÃΪmarkµÄÖµ¡£markµÄÖµ×ÜÊÇСÓÚµÈÓÚpositionµÄÖµ£¬Èç¹û½«positionµÄÖµÉèµÄ±Èmar
Ïà¹ØÎĵµ£º
DOM³õ²½
DOMÊÇDocument Object ModelµÄËõд£¬¼´Îĵµ¶ÔÏóÄ£ÐÍ¡£Ç°ÃæËµ¹ý£¬XML½«Êý¾Ý×é֯Ϊһ¿ÅÊ÷£¬ËùÒÔDOM¾ÍÊǶÔÕâ¿ÅÊ÷µÄÒ»¸ö¶ÔÏóÃèÐð¡£Í¨Ë×µÄ˵£¬¾ÍÊÇͨ¹ý½âÎöXMLÎĵµ£¬ÎªXMLÎĵµÔÚÂß¼ÉϽ¨Á¢Ò»¸öÊ÷Ä£ÐÍ£¬Ê÷µÄ½ÚµãÊÇÒ»¸ö¸ö¶ÔÏó¡£ÎÒÃÇͨ¹ý´æÈ¡ÕâЩ¶ÔÏó¾ÍÄܹ»´æÈ¡XMLÎĵµµÄÄÚÈÝ¡£
ÏÂÃæÎÒÃÇÀ´¿´Ò»¸ö¼òµ¥µÄÀý×Ó£¬¿´¿´ÔÚDOMÖ ......
1. ÏÈ´ÓÍøÉÏÏÂÔØjdk(jdk-1_5_0_02-linux-i586.rpm) £¬ÍƼöSUNµÄ¹Ù·½ÍøÕ¾www.sun.com£¬ÏÂÔØºó·ÅÔÚ/homeĿ¼ÖУ¬µ±È»ÆäËüµØ·½Ò²ÐС£
½øÈ밲װĿ¼
#cd /home
#cp jdk-1_5_0_02-linux-i586.rpm /usr/local
#cd /usr/local
¸øËùÓÐÓû§Ìí¼Ó¿ÉÖ´ÐеÄȨÏÞ
#chmod +x jdk-1_5_0_02-linux-i586.rpm.bin
#./jdk-1_5_0_02-lin ......
strictfp ¹Ø¼ü×Ö
¿ÉÄܺܶàÈ˶¼Ã»ÓÐÓùýÕâ¸ö¹Ø¼ü×Ö£¬Èç¹ûºÜ¶àÈËÓÃÄDZêÌâÒ²ÏÔµÃûʲôÒâÒåÁË¡£
Ê×ÏÈ¿´Á½¶ÎºÜ¼òµ¥µÄ´úÂ룺
public static void main(String[] args){
double w = 7*8/3;
System.out.println(w);
}
public static strictfp void main(String[] args){
double w = 7*8/3;
System.out.println(w);
......
amf3,adobe´´Á¢µÄÊý¾Ý¸ñʽÓÉÓÚʹÓöþ½øÖÆ,ûÓÐÁËxmlµÈÈßÓàµÄ×Ö·ûÊý¾ÝÁ¿»áÉٺܶà!¶øÇҺܶà²âÊÔ±¨¸æ¾ù²â³öamf´«µÝЧ¹ûºÜ¸ß.
Õâ´ÎÊÇʹÓÃFlexµÄSocketÀàÓëjavaµÄ·þÎñ¶Ë½øÐÐͨÐÅ,
²½ÖèÊÇ:
¿Í»§¶ËÓÃsocketÀàÁ¬½Ójava·þÎñÆ÷,
ʹÓòéѯ×Ö·û´®½øÐÐÇëÇó,
java½«Êý¾Ý·âװΪhashmap,×îºó½«hashmapÓÃamfoutputstreamÊä³öÖÁflexµÄ¿Í» ......
DOM³õ²½
DOMÊÇDocument Object ModelµÄËõд£¬¼´Îĵµ¶ÔÏóÄ£ÐÍ¡£Ç°ÃæËµ¹ý£¬XML½«Êý¾Ý×é֯Ϊһ¿ÅÊ÷£¬ËùÒÔDOM¾ÍÊǶÔÕâ¿ÅÊ÷µÄÒ»¸ö¶ÔÏóÃèÐð¡£Í¨Ë×µÄ˵£¬¾ÍÊÇͨ¹ý½âÎöXMLÎĵµ£¬ÎªXMLÎĵµÔÚÂß¼ÉϽ¨Á¢Ò»¸öÊ÷Ä£ÐÍ£¬Ê÷µÄ½ÚµãÊÇÒ»¸ö¸ö¶ÔÏó¡£ÎÒÃÇͨ¹ý´æÈ¡ÕâЩ¶ÔÏó¾ÍÄܹ»´æÈ¡XMLÎĵµµÄÄÚÈÝ¡£
ÏÂÃæÎÒÃÇÀ´¿´Ò»¸ö¼òµ¥µÄÀý×Ó£¬¿´¿´ÔÚDOMÖ ......