Java 7ÐÂÌØÐÔ£¨Èý£© ——¸ü¶àNIO APIs
JSR 203£ºNIO 2À©Õ¹ºÍʵÏÖÁËÔÚJava 1.4ÖмÓÈëµÄ×î³õNIO¹¦ÄÜ¡£ÔÚNIO 2ÖÐ×îÃ÷ÏÔµÄÐÂÔö¹¦ÄܾÍÊÇÎļþ·ÃÎÊAPIµÄÈ«Ãæ¸Ä½ø¡£¶àÊý¿ª·¢Õß¶¼Óùýjava.io.File£¬¶ÔÆä´æÔÚµÄÖÚ¶àȱÏÝ×ÔÈ»ÐÄÖÐÓÐÊý£º
¡ô²»Ö§³Ö·ûºÅÁ´½Ó(symbolic links )
¡ô²»Ö§³Ö¼òµ¥Òƶ¯ºÍ¿½±´²Ù×÷
¡ôĿ¼ÂþÓκ͹ýÂËAPI·Ç³£¸´ÔÓ
¡ô¶ÔÎļþÊôÐԺͷÃÎÊȨÏÞµÄÖ§³Ö·Ç³£ÓÐÏÞ
¡ôûÓв鿴Ŀ¼»òÎļþµÄAPI
¡ôÓÐÏ޵ĴíÎó´¦Àí¹¦ÄÜ
ÐÒÔ˵ÄÊÇ£¬JSR 203²»½ö¸Ä½øÁËÒÔÉÏËùÓÐȱµã£¬¶øÇÒʵÏÖÁ˸ü¶à¹¦ÄÜ¡£Õâ¸öAPI´ÓÒ»¿ªÊ¼¾ÍÉè¼ÆÎª¾ß±¸¿ÉÀ©Õ¹ÐÔ£¬³ýÁËÖ§³ÖĬÈÏÎļþϵͳÍ⣬»¹Ö§³ÖǶÈëʽÎļþϵͳ£¬»¹¾ßÓÐÖî¶àÁé»îÑ¡ÏîÉèÖ㬿ÉÒÔʵÏÖÖîÈç´ò¿ªºÍ¿½±´Îļþ¡¢ÏµÍ³ÊôÐÔ¶¨ÒåµÈ²Ù×÷¡£
Listing 2ÑÝʾÁËJSR 203ÊÇÈçºÎ±»ÓÃÀ´ÊµÏÖһЩͨÓòÙ×÷¡£PathÊÇÕâ¸öAPIµÄºËÐÄ;Äã¿ÉÒÔ°ÑËü¿´×÷н¨Îļþ¡£
Listing 2
import java.nio.file.*;
// FileSystems -> FileSystem -> Path
FileSystem fileSystem = FileSystems.getDefault();
Path homeDir = fileSystem.getPath("/Users/lskywalker");
// Shortcut with Paths helper class
Path homeDir = Paths.get("/Users/lskywalker");
Path secrets = homeDir.resolve("secrets.txt");
// Steal secrets
secrets.moveTo(Paths.get("/Users/dvader/secrets.txt"));
³ýÁËÎļþϵͳAPIÍ⣬JSR 203»¹ÊµÏÖÁËÐí¶àÔÚµÚÒ»°æNIOÖÐÌá³öµÄAPI£¬ÌṩÁ˶Ô×é²¥µÄ¸ü¶àÖ§³Ö£¬ÌṩÁËÔÚSocketºÍÎļþÉϽøÐÐÒì²½I/O²Ù×÷µÄAPI¡£
Ïà¹ØÎĵµ£º
ÔÚ Java 5 »·¾³ÖУ¬Èç¹ûÓÃÀàAȥʵÏÖ½Ó¿ÚB (A implements B)£¬ÔÚ Java 5 µÄƽ̨Ï£¬A ʵÏֵķ½·¨ÃûǰÊDz»ÄÜÌí¼Ó @Override ±ê¼ÇµÄ£¬·ñÔò»á±¨ÈçÏÂͼËùʾµÄ´íÎóÌáʾ¶øÎÞ·¨±àÒ룺
{{----}}16172
¾¹ý³¢ÊÔºÍ×ܽᣬµÃ³öÏÂ±í¡£
Version
Java 5
Java 6
³¬ÀàÐÍÊÇ interface£¬×ÓÀàÐÍÖØÐ´µÄ·½·¨ÄÜ·ñÌí¼Ó@Override ±ê¼Ç
·ñ
ÊÇ
......
¶þ¡¢JavaÀ¬»ø»ØÊÕ
1. JVMÔËÐл·¾³ÖÐÀ¬»ø¶ÔÏóµÄ¶¨Òå
Ò»¸ö¶ÔÏó´´½¨ºó±»·ÅÖÃÔÚJVMµÄ¶ÑÄÚ´æÖУ¬µ±ÓÀÔ¶²»ÔÙÒýÓÃÕâ¸ö¶ÔÏóʱ£¬Ëü½«±»JVMÔÚ¶ÑÄÚ´æÖлØÊÕ¡£»ò µ±¶ÔÏóÔÚJVMÔËÐпռäÖÐÎÞ·¨Í¨¹ý¸ù¼¯ºÏ(root set)µ½´ïʱ£¬Õâ¸ö¶ÔÏó¾Í±»³ÆÎªÀ¬»ø¶ÔÏó¡£
2. ¶ÑÄÚ´æ
* ÔÚJVMÆô¶¯Ê±±»´´½¨£»¶ÑÄÚ´æÖÐËù´æ´¢µ ......
¹À¼ÆÑ§Ï°javaµÄÂòÁËBruce Eckle¡¶Thinking In Java 4th Edition¡·µÄÐÂÊÖÃÇ£¨ÎÒÒ²ÊÇ£©£¬¹À¼Æ¶à»áÓöµ½Ò»¸öÎÊÌ⣺
±àÒëʱimport static net.mindview.util.Print.*;ÕÒ²»µ½ÏàÓ¦µÄ°ü£¬print·½·¨¾ÍÓò»ÁË¡£ÏÂÃæ°ÑÎҵIJÙ×÷·½·¨Ìù³öÀ´£¬Ï£ÍûÄܰﵽÄã¡£
1¡¢°ÑÊé±¾µÄÔ´´úÂë ......
×î½ü¿´µ½¼¸Æª¹ØÓÚjavaÖвÙ×÷ftpµÄÎÄÕ£¬ËùÒÔÏëдһ¸ö×ܽáÌù£¬±ê¼Çһϣ¬·½±ãÒÔºóÓ¦Óá£
Ê×ÏÈ£¬ÎÒÃÇ¿ÉÒÔÓ¦ÓÃjavaÖеÄftp¿â£¬javaÖÐÌṩÁËÒ»¸öftpclientµÄÀ࣬ÌṩÁ˺ܶà²Ù×÷ftpµÄ·½·¨¡£
ÏÈÉÏ´úÂ룬һ¿´±ãÖª£¬ºÜ¼òµ¥£¬Ó¦ÓÃʱֻҪ´«µÝÏàÓ¦µÄserver£¬user£¬passwordµÈ¾ÍÐÐÁË¡£
import java.io.IOException;
import sun.net. ......
package com.navinfo.mygim.admin.util;
/*
* Pinyin.java
* vicbay
*/
public class Pinyin{
private String[] name = { "zuo", "zun", "zui", "zuan", "zu", "zou",
"zong", ......