JavaѹËõÀà¿âµÄʹÓà 1.×ÜÊö
¡¡¡¡inkfishÔ´´£¬ÇëÎðÉÌÒµÐÔÖÊ×ªÔØ£¬×ªÔØÇë×¢Ã÷À´Ô´£¨http://blog.csdn.net/inkfish£©¡£
¡¡¡¡Ñ¹ËõÊDZà³ÌÖг£¼ûµÄ¼¼ÇÉ£¬¶àÓÃÓÚ´óÎļþѹËõ£¬Êý¾ÝÁ÷ѹËõµÈ¡£ÔÚJavaÀà¿âÖУ¬ÄÚÖÃÁËjar¡¢ZIP¡¢GZIP¡¢ZLIBµÈµÄÖ§³Ö£¨¼ûjava.util.zip¡¢java.util.jar°ü£©¡£ÁíÍâÔÚApacheÏîÄ¿ÏÂAntÖÐant.jarµÄorg.apache.tools.tar¡¢org.apache.tools.zip¡¢org.apache.tools.bzip2·Ö±ðÌṩÁËtar¡¢zip¡¢bzip2µÄÖ§³Ö£»Apache commons compressÏîÄ¿ÀïÌṩÁ˶ÔAR¡¢BZIP¡¢CPIO¡¢GZP¡¢TAR¡¢ZIPµÄÖ§³Ö¡£7-zip
ÌṩÁËLZMA¸ñʽµÄѹËõ£¨public domain£©£¬QuickLZ
ÌṩÁËquicklz¸ñʽµÄѹËõ£¨GPL£©£¬oberhumer.com
ÌṩLZO¸ñʽµÄѹËõ£¨GPL£©£¬hadoop-gpl-compression
Ôò¶ÔLZOµÄcʵÏÖÓÃJNI½øÐаü×°£¬Ìṩ¸ü¿ì½ÝµÄLZOѹËõ¡££¨À´Ô´£ºhttp://blog.csdn.net/inkfish£©
¡¡¡¡ÑϸñÀ´Ëµ£¬TAR¡¢AR¡¢CPIO²¢²»ÊôÓÚѹËõÈí¼þ£¬¶øÊÇÒ»ÖÖ´ò°üÈí¼þ£¬ËüÄܰѺܶàÎļþ¡¢Îļþ¼Ð´ò°ü³ÉÒ»¸öÎļþ£¬¹©Ñ¹Ëõ³ÌÐòѹËõ¡£¶øÔÛÃÇÔÚwindowsÖÐÊìϤµÄzip¡¢rar£¬ÑϸñµÄ˵ÊǾ߱¸´ò°üºÍѹËõ¹¦ÄܵÄÒ»ÖÖ¸ñʽ¡££¨À´Ô´£ºhttp://blog.csdn.net/inkfish£©
ÒòΪ±¾ÈËÔÚÏîÄ¿ÖÐÐèÖ÷ÒªÐèÒªÓ¦ÓÃѹËõ¹¤¾ß¶ÔÍøÂçÖд«ÊäµÄÊý¾ÝÁ÷½øÐÐѹËõ£¬Òò´ËÖØµã¹ØÐĶÔStreamµÄѹËõ£¬¶ø²»¹ØÐĶԶà¸öÎļþµÄѹËõ£¬ÕâÔÚ´úÂëÖÐÒ²»áÓÐËùÌåÏÖ¡£Òò´Ë£¬±¾ÏµÁеĴúÂëÒ»°ã½öÊÊÓÃÓÚѹËõÁ÷»òѹËõÒ»¸öÎļþ¡££¨À´Ô´£ºhttp://blog.csdn.net/inkfish£©
¡¡¡¡LZMA¡¢QuickLZ¡¢LZOÒòΪÌṩµÄÀà¿â²»Ö§³ÖstreamÐÎʽѹËõ»òÌṩµÄexampleÌ«ÄÑ¿´¶®£¬¹Ê²»×÷²âÊÔ¡£ÕâÀﻹÓÐÒ»¸öÐèÒªÌáÐÑ£¬Apache commons compressµÄtar¡¢zip¡¢bzip2À´×î³õÔ´ÓÚant£¬µ«¾¹ýÏîÄ¿¼äÇ¨ÒÆ¡¢ÑÝ»¯£¬API¼°ÐÔÄÜÓÐËù²»Í¬¡££¨À´Ô´£ºhttp://blog.csdn.net/inkfish£©
¡¡¡¡ËùÓеĸñʽ¾ùÌṩѹËõºÍ½âѹÁ½¸ö·½·¨£¬ÔÙ´ÎÌáÐÑÕâÀïËùÓдúÂë²»ÊÊÓÃÓÚѹËõ¶à¸öÎļþ¡¢Îļþ¼Ð¡£ÏÂÃæÊdzéÏóµÄѹËõ¡¢¼ÓѹËõÀࣺ£¨À´Ô´£ºhttp://blog.csdn.net/inkfish£©
package study.inkfish.compress;
import java.io.File;
import java.io.IOException;
public abstract class Compress {
public void compress(File srcFile, File destFile) {
destFile.getParentFile().mkdirs();
try {
doCompress(srcFile, destFile);
} catch (IOException ex) {
ex.printStackTrace();
}
}
public void decompress(File srcFile, File destDir) {
destDir.mkdirs();
try {
doDec
Ïà¹ØÎĵµ£º
java³ÌÐòÄÚ´æÖ÷Òª·ÖΪÁË2¸ö²¿·Ö£¬°üÀ¨ stack segment(Õ»ÄÚ´æ)¡¢heap segment(¶ÑÄÚ´æ)¡£
ÔÚ·ÖÎöJava³ÌÐòÄÚ´æ·ÖÅäÇé¿öʱ£¬ÎÒÃÇ´ÓÏÂÃæÕâ¸ö¾³£±»Ê¹ÓõÄÀý×Ó¿ªÊ¼°É¡£
ÏÂÃæ³ÌÐò½«´òÓ¡Ê²Ã´ÄØ£¿
Java´úÂë
String s1 = new S ......
SCJP5ѧϰ±Ê¼Ç
Ò»¡¢²Ù×÷ϵͳÖÐÏ̺߳ͽø³ÌµÄ¸ÅÄî
ÏÖÔڵIJÙ×÷ϵͳÊǶàÈÎÎñ²Ù×÷ϵͳ¡£¶àÏß³ÌÊÇʵÏÖ¶àÈÎÎñµÄÒ»ÖÖ·½Ê½¡£
½ø³ÌÊÇÖ¸Ò»¸öÄÚ´æÖÐÔËÐеÄÓ¦ÓóÌÐò£¬Ã¿¸ö½ø³Ì¶¼ÓÐ×Ô¼º¶ÀÁ¢µÄÒ»¿éÄÚ´æ¿Õ¼ä£¬Ò»¸ö½ø³ÌÖпÉÒÔÆô¶¯¶à¸öÏ̡߳£±ÈÈçÔÚWindowsϵͳÖУ¬Ò»¸öÔËÐеÄexe¾ÍÊÇÒ»¸ö½ø³Ì¡£
Ïß³ÌÊÇÖ¸½ø³ÌÖеÄÒ ......
SCJP5ѧϰ±Ê¼Ç
ÒªÀí½âÏ̵߳÷¶ÈµÄÔÀí£¬ÒÔ¼°Ïß³ÌÖ´Ðйý³Ì£¬±ØÐëÀí½âÏß³ÌջģÐÍ¡£
Ïß³ÌÕ»ÊÇָijʱ¿ÌʱÄÚ´æÖÐÏ̵߳÷¶ÈµÄÕ»ÐÅÏ¢£¬µ±Ç°µ÷Óõķ½·¨×ÜÊÇλÓÚÕ»¶¥¡£Ïß³ÌÕ»µÄÄÚÈÝÊÇËæ×ųÌÐòµÄÔËÐж¯Ì¬±ä»¯µÄ£¬Òò´ËÑо¿Ïß³ÌÕ»±ØÐëÑ¡ÔñÒ»¸öÔËÐеÄʱ¿Ì£¨Êµ¼ÊÉÏÖ¸´úÂëÔËÐе½Ê²Ã´µØ·½)¡£
ÏÂÃæÍ¨¹ýÒ»¸öʾÀýÐ﵀ ......
ΪʲôʹÓÃvolatile±Èͬ²½´ú¼Û¸üµÍ?
ͬ²½µÄ´ú¼Û, Ö÷ÒªÓɯ䏲¸Ç·¶Î§¾ö¶¨, Èç¹û¿ÉÒÔ½µµÍͬ²½µÄ¸²¸Ç·¶Î§, Ôò¿ÉÒÔ´ó·ùÌáÉý³ÌÐòÐÔÄÜ.
¶øvolatileµÄ¸²¸Ç·¶Î§½ö½ö±äÁ¿¼¶±ðµÄ. Òò´ËËüµÄͬ²½´ú¼ÛºÜµÍ.
volatileÔÀíÊÇʲô?
volatileµÄÓïÒå, ÆäʵÊǸæËß´¦ÀíÆ÷, ²»Òª½«ÎÒ·ÅÈ빤×÷ÄÚ´æ, ÇëÖ±½ÓÔÚÖ÷´æ²Ù×÷ÎÒ.(¹¤×÷ÄÚ´æÏê¼ûj ......