java¶ÔFile»ù±¾²Ù×÷
package com.chinacache.utils;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.log4j.Logger;
public class FileUtils {
private static final Logger logger = Logger.getLogger(FileUtils.class);
/**
* ÒÆ¶¯Îļþµ½Ö¸¶¨Ä¿Â¼
*
* @param srcFile
* ±»Òƶ¯Îļþ
* @param directory
* Ä¿±êĿ¼
*/
public static void moveFile(File srcFile, File directory) {
renameFile(srcFile, new File(directory, srcFile.getName()));
}
public static void renameFile(File srcFile, File newFile) {
// ²»´æÔÚÍ˳ö
if (srcFile.exists()) {
try {
org.apache.commons.io.FileUtils.moveFile(srcFile, newFile);
} catch (IOException e) {
logger.error("move file [" + srcFile.getAbsolutePath()
+ "] error", e);
}
org.apache.commons.io.FileUtils.deleteQuietly(srcFile);
}
}
/**
* ÒÆ¶¯Ò»ÅúÎļþµ½Ö¸¶¨Ä¿Â¼
*
* @param srcFiles
* Îļþ¼¯ºÏ
* @param directory
* Ä¿±êĿ¼
*/
public static void moveFiles(File[] srcFiles, File directory) {
for (int i = 0; i < srcFiles.length; i++) {
moveFile(srcFiles[i], directory);
}
}
/**
* ÒÆ¶¯Ò»ÅúÎļþµ½Ö¸¶¨Ä¿Â¼
*
* @param srcFiles
* Îļþ¼¯ºÏ
* @param directory
* Ä¿±êĿ¼
*/
public static void moveFiles(List<File> srcFiles, File directory) {
for (int i = 0; i < srcFiles.size(); i++) {
moveFile(srcFiles.get(i), directory);
}
}
public static boolean isAllDirectory(File... file) {
for (int i = 0; i < file.length; i++) {
if (!file[i].exists() || file[i].isFile() || !file[i].canRead()
|| !file[i].canWrite()) {
logger.error("Can't find this file["
+ file[i].getAbsolutePath()
+ "] or is not a Directory. or can't read or write");
return false;
}
}
return true;
}
/**
* »ñȡĿ±êĿ¼ÖÐÎļþ´óС´óÓÚÖ¸¶¨ÖµµÄÎļþ
*
* @param srcDir
*
Ïà¹ØÎĵµ£º
http://blog.ixpub.net/html/36/16577236-371599.html
06Äê11Ô£¬Sun¹«Ë¾¸ß²ã¹ÙÔ±Ðû²¼£º±à³ÌÓïÑÔJava¿ª·ÅÔ´Â룬²¢ÇÒ×ñÊØGPL¹æÔò£¬²©µÃһƬºÃÆÀ¡£¾¹ý°ëÄêµÄ²»Ð¸Å¬Á¦£¬SunÖÕÓڰѾßÓÐ 600¶àÍòÐеÄJavaÔ´´úÂ루ָJDKÈí¼þ°ü£©ÕûÀí£¨ÇåÀí£©Íê±Ï£¬¼ÓÒÔ¹«²¼£¬Ê¹Java±äΪÍêÈ«¿ÉÓã¨fully buildable£©µÄ¿ªÔ´±à³ÌÓïÑÔ¡£07Äê5ÔÂ8È ......
Éî¿ÌÀí½âJava±à³ÌµÄ7¸öÀý×Ó Ù¡Ç¿ 2009Äê11ÔÂ7ÈÕ http://blog.csdn.net/microtong
1. ÔĶÁÏÂÁдúÂë»Ø´ðÎÊÌ⣨µÚÒ»¸öJava³ÌÐò£¬Àí½âPATHºÍCLASSPATH£¬Ñ§»áʹÓÃjavacºÍjavaÃüÁ
view plaincopy to clipboardprint?
package cn.edu.uibe;
public class HelloWorld {
......
µ±JVM£¨JavaÐéÄâ»ú£©Æô¶¯Ê±£¬»áÐγÉÓÉÈý¸öÀà¼ÓÔØÆ÷×é³ÉµÄ³õʼÀà¼ÓÔØÆ÷²ã´Î½á¹¹£º
bootstrap classloader
|
extension classloader
&n ......
1.1 ²»ÓÃnew¹Ø¼ü´Ê´´½¨ÀàµÄʵÀý
ÓÃnew¹Ø¼ü´Ê´´½¨ÀàµÄʵÀýʱ£¬¹¹Ô캯ÊýÁ´ÖеÄËùÓй¹Ô캯Êý¶¼»á±»×Ô¶¯µ÷Óᣵ«Èç¹ûÒ»¸ö¶ÔÏóʵÏÖÁËCloneable½Ó¿Ú£¬ÎÒÃÇ¿ÉÒÔµ÷ÓÃËüµÄclone()·½·¨¡£clone()·½·¨²»»áµ÷ÓÃÈκÎÀ๹Ô캯Êý¡£
ÔÚʹÓÃÉè¼ÆÄ£Ê½£¨Design Pattern£©µÄ³¡ºÏ£¬Èç¹ûÓÃFactoryģʽ´´½¨¶ÔÏó£¬Ôò¸ÄÓÃclone()·½·¨´´½¨Ðµ ......