¶àÏ߳̿ª·¢µÄ½Ý¾¶£º¹¹½¨Java²¢·¢Ä£ÐÍ¿ò¼Ü
http://webservices.ctocio.com.cn/java/258/9422258_2.shtml
¡¡±¾ÎÄÎ§ÈÆÒ»¸ö¼òµ¥µÄÀý×ÓÂÛÊöÁËÈçºÎ¹¹¼ÜÒ»¸öJava²¢·¢Ä£ÐÍ¿ò¼Ü£¬ÆäÖÐʹÓÃÁËһЩ¹¹½¨¿ò¼ÜµÄ³£Óü¼Êõ£¬Ï£Íû¶ÁÕßÄܹ»Éî¼ÓÁì»áÆäÔÀí£¬Ò²Ï£ÍûÄú¿ÉÒÔ¶Ô±¾ÎÄÖеĿò¼Ü½øÐÐÀ©³ä£¬Ö±½ÓÓ¦Óõ½×Ô¼ºµÄ¹¤×÷ÖС£
¡¡¡¡Java¶àÏß³ÌÌØÐÔΪ¹¹½¨¸ßÐÔÄܵÄÓ¦ÓÃÌṩÁ˼«´óµÄ·½±ã£¬µ«ÊÇÒ²´øÀ´Á˲»ÉÙµÄÂé·³¡£Ï̼߳äͬ²½¡¢Êý¾ÝÒ»ÖÂÐԵȷ³ËöµÄÎÊÌâÐèҪϸÐĵĿ¼ÂÇ£¬Ò»²»Ð¡Ðľͻá³öÏÖһЩ΢ÃîµÄ£¬ÄÑÒÔµ÷ÊԵĴíÎó¡£
¡¡¡¡ÁíÍ⣬ӦÓÃÂß¼ºÍÏß³ÌÂß¼¾À²øÔÚÒ»Æð£¬»áµ¼Ö³ÌÐòµÄÂß¼½á¹¹»ìÂÒ£¬ÄÑÒÔ¸´ÓúÍά»¤¡£±¾ÎÄÊÔͼ¸ø³öÒ»¸ö½â¾öÕâ¸öÎÊÌâµÄ·½°¸£¬Í¨¹ý¹¹½¨Ò»¸ö²¢·¢Ä£ÐÍ¿ò¼Ü(framework)£¬Ê¹µÃ¿ª·¢¶àÏ̵߳ÄÓ¦ÓñäµÃÈÝÒס£
¡¡¡¡»ù´¡ÖªÊ¶
¡¡¡¡JavaÓïÑÔÌṩÁ˶ÔÓÚÏ̺߳ܺõÄÖ§³Ö£¬ÊµÏÖ·½·¨Ð¡ÇÉ¡¢ÓÅÑÅ¡£¶ÔÓÚ·½·¨ÖØÈëµÄ±£»¤£¬ÐźÅÁ¿(semaphore)ºÍÁÙ½çÇø(critical section)»úÖÆµÄʵÏÖ¶¼·Ç³£¼ò½à¡£¿ÉÒÔºÜÈÝÒ×µÄʵÏÖ¶àÏ̼߳äµÄͬ²½²Ù×÷´Ó¶ø±£»¤¹Ø¼üÊý¾ÝµÄÒ»ÖÂÐÔ¡£ÕâÐ©ÌØµãʹµÃJava³ÉÎªÃæÏò¶ÔÏóÓïÑÔÖжÔÓÚ¶àÏß³ÌÌØÐÔÖ§³Ö·½ÃæµÄٮٮÕß(C++ÕýÔÚÊÔͼ°Ñboost¿âÖеĶÔÓÚÏ̵߳ÄÖ§³Ö²¿·ÖÄÉÈëÓïÑÔ±ê×¼)¡£
¡¡¡¡JavaÖÐÄÚÖÃÁ˶ÔÓÚ¶ÔÏó²¢·¢·ÃÎʵÄÖ§³Ö£¬Ã¿Ò»¸ö¶ÔÏó¶¼ÓÐÒ»¸ö¼àÊÓÆ÷(monitor)£¬Í¬Ê±Ö»ÔÊÐíÒ»¸öÏ̳߳ÖÓмàÊÓÆ÷´Ó¶ø½øÐжԶÔÏóµÄ·ÃÎÊ£¬ÄÇЩûÓлñµÃ¼àÊÓÆ÷µÄÏ̱߳ØÐëµÈ´ýÖ±µ½³ÖÓмàÊÓÆ÷µÄÏß³ÌÊͷżàÊÓÆ÷¡£¶ÔÏóͨ¹ýsynchronized¹Ø¼ü×ÖÀ´ÉùÃ÷Ï̱߳ØÐë»ñµÃ¼àÊÓÆ÷²ÅÄܽøÐжÔ×Ô¼ºµÄ·ÃÎÊ¡£
¡¡¡¡synchronizedÉùÃ÷½ö½ö¶ÔÓÚһЩ½ÏΪ¼òµ¥µÄÏ̼߳äͬ²½ÎÊÌâ±È½ÏÓÐЧ£¬¶ÔÓÚÄÄЩ¸´ÔÓµÄͬ²½ÎÊÌ⣬±ÈÈç´øÓÐÌõ¼þµÄͬ²½ÎÊÌ⣬JavaÌṩÁËÁíÍâµÄ½â¾ö·½·¨£¬wait/notify/notifyAll¡£
¡¡¡¡»ñµÃ¶ÔÏó¼àÊÓÆ÷µÄÏ߳̿ÉÒÔͨ¹ýµ÷ÓøöÔÏóµÄwait·½·¨Ö÷¶¯ÊͷżàÊÓÆ÷£¬µÈ´ýÔڸöÔÏóµÄÏ̵߳ȴý¶ÓÁÐÉÏ£¬´ËʱÆäËûÏ߳̿ÉÒԵõ½¼àÊÓÆ÷´Ó¶ø·ÃÎʸöÔÏó£¬Ö®ºó¿ÉÒÔͨ¹ýµ÷ÓÃnotify/notifyAll·½·¨À´»½ÐÑÏÈǰÒòµ÷ÓÃwait·½·¨¶øµÈ´ýµÄÏ̡߳£
¡¡¡¡Ò»°ãÇé¿öÏ£¬¶ÔÓÚwait/notify/notifyAll·½·¨µÄµ÷Óö¼ÊǸù¾ÝÒ»¶¨µÄÌõ¼þÀ´½øÐе쬱ÈÈ磺¾µäµÄÉú²úÕß/Ïû·ÑÕßÎÊÌâÖжÔÓÚ¶ÓÁпա¢ÂúµÄÅжϡ£ÊìϤPOSIXµÄ¶ÁÕ߻ᷢÏÖ£¬Ê¹ÓÃwait/notify/notifyAll¿ÉÒÔºÜÈÝÒ×µÄʵÏÖPOSIXÖеÄÒ»¸öÏ̼߳äµÄ¸ß¼¶Í¬²½¼¼Êõ£ºÌõ¼þ±äÁ¿¡£
¡¡¡¡¼òµ¥Àý×Ó
¡¡¡¡±¾ÎĽ«Î§ÈÆÒ»¸ö¼òµ¥µÄÀý×ÓÕ¹¿ªÂÛÊö£¬ÕâÑù¿ÉÒÔ¸üÈÝÒ×Í»³öÎÒÃǽâ¾öÎÊÌâµÄ˼·¡¢·½·¨¡£±¾ÎÄÏëÏò¶ÁÕßÕ¹ÏÖµÄÕýÊÇÕâЩ˼·¡¢·½·¨¡£ÕâЩ˼·¡¢·½·¨¸ü¼ÓÊÊÓÃÓÚ½â¾ö´ó¹æÄ£
Ïà¹ØÎĵµ£º
ʹÓÃJava²Ù×÷Îı¾ÎļþµÄ·½·¨Ïê½â
ÕªÒª: ×î³õjavaÊDz»Ö§³Ö¶ÔÎı¾ÎļþµÄ´¦ÀíµÄ£¬ÎªÁËÃÖ²¹Õâ¸öȱº¶¶øÒýÈëÁËReaderºÍWriterÁ½¸öÀà
×î³õjavaÊDz»Ö§³Ö¶ÔÎı¾ÎļþµÄ´¦ÀíµÄ£¬ÎªÁËÃÖ²¹Õâ¸öȱº¶¶øÒýÈëÁËReaderºÍWriterÁ½¸öÀ࣬ÕâÁ½¸öÀà¶¼ÊdzéÏ ......
1>CollectionµÄÓ÷¨£º
import java.util.*;
public class List1
{
public static void main(String []args)
{
String a="A";
String b="B";
String c="C";
Collection<String>list = new ArrayList<String>();
list.add ......
ÓÃJava¼òµ¥µÄ¶ÁÈ¡pdfÎļþÖеÄÊý¾Ý£ºµÚÒ»²½£ºÏÂÔØPDFBox-0.7.2.jar¡£Ìṩһ¸öÏÂÔØµØÖ·£ºhttp://pdfhome.hope.com.cn/Resource.aspx?CID=63844604-5253-4ae1- b023-258c9e324061&RID=20cd8f94-1cee-40b6-a3df-0ef024f8e0d2½âѹºó£¬°ÑlibÎļþϵÄPDFBox-0.7.2.jar£¬PDFBox-0.7.2-log4j.jar·Åµ½Äãclasspath·¾¶Ï¡££¨ÎÒ°ÑÔ´ ......
ÓÐÐí¶àÈËѧÁ˺ܳ¤Ê±¼äµÄJava£¬µ«Ò»Ö±²»Ã÷°×hashCode·½·¨µÄ×÷Óã¬
ÎÒÀ´½âÊÍһϰɡ£Ê×ÏÈ£¬ÏëÒªÃ÷°×hashCodeµÄ×÷Óã¬Äã±ØÐëÒªÏÈÖªµÀJavaÖеļ¯ºÏ¡£¡¡¡¡
×ܵÄÀ´Ëµ£¬JavaÖеļ¯ºÏ£¨Collection£©ÓÐÁ½À࣬һÀàÊÇList£¬ÔÙÓÐÒ»ÀàÊÇSet¡£
ÄãÖªµÀËüÃǵÄÇø±ðÂð£¿Ç°Õß¼¯ºÏÄÚµÄÔªËØÊÇÓÐÐòµÄ£¬ÔªËØ¿ÉÒÔÖØ¸´£»ºóÕßÔªËØÎÞÐò£¬µ«ÔªËز» ......
TestRef.java
¡¡¡¡import java.lang.reflect.Method;
¡¡¡¡import java.lang.reflect.InvocationTargetException;
¡¡¡¡/**
¡¡¡¡* Created by IntelliJ IDEA.
¡¡¡¡* File: TestRef.java
¡¡¡¡* User: String
¡¡¡¡* Date: 2010-3-29 14:48:44 ......