JavaỊ̈߳ºÏ̵߳Ľ»»¥
JavaỊ̈߳ºÏ̵߳Ľ»»¥
SCJP5ѧϰ±Ê¼Ç
Ï߳̽»»¥ÊDZȽϸ´ÔÓµÄÎÊÌ⣬SCJPÒªÇ󲻺ܻù´¡£º¸ø¶¨Ò»¸ö³¡¾°£¬±àд´úÂëÀ´Ç¡µ±Ê¹Óõȴý¡¢Í¨ÖªºÍ֪ͨËùÓÐÏ̡߳£
Ò»¡¢Ï߳̽»»¥µÄ»ù´¡ÖªÊ¶
SCJPËùÒªÇóµÄÏ߳̽»»¥ÖªÊ¶µãÐèÒª´Ójava.lang.ObjectµÄÀàµÄÈý¸ö·½·¨À´Ñ§Ï°£º
void notify()
»½ÐÑÔڴ˶ÔÏó¼àÊÓÆ÷ÉϵȴýµÄµ¥¸öÏ̡߳£
void notifyAll()
»½ÐÑÔڴ˶ÔÏó¼àÊÓÆ÷ÉϵȴýµÄËùÓÐÏ̡߳£
void wait()
µ¼Öµ±Ç°µÄÏ̵߳ȴý£¬Ö±µ½ÆäËûÏ̵߳÷Óô˶ÔÏóµÄ notify() ·½·¨»ò notifyAll() ·½·¨¡£
µ±È»£¬wait()»¹ÓÐÁíÍâÁ½¸öÖØÔØ·½·¨£º
void wait(long timeout)
µ¼Öµ±Ç°µÄÏ̵߳ȴý£¬Ö±µ½ÆäËûÏ̵߳÷Óô˶ÔÏóµÄ notify() ·½·¨»ò notifyAll() ·½·¨£¬»òÕß³¬¹ýÖ¸¶¨µÄʱ¼äÁ¿¡£
void wait(long timeout, int nanos)
µ¼Öµ±Ç°µÄÏ̵߳ȴý£¬Ö±µ½ÆäËûÏ̵߳÷Óô˶ÔÏóµÄ notify() ·½·¨»ò notifyAll() ·½·¨£¬»òÕßÆäËûij¸öÏß³ÌÖжϵ±Ç°Ị̈߳¬»òÕßÒѳ¬¹ýij¸öʵ¼Êʱ¼äÁ¿¡£
ÒÔÉÏÕâЩ·½·¨ÊÇ°ïÖúÏ̴߳«µÝÏ̹߳ØÐĵÄʱ¼ä״̬¡£
¹ØÓڵȴý/֪ͨ£¬Òª¼ÇסµÄ¹Ø¼üµãÊÇ£º
±ØÐë´Óͬ²½»·¾³ÄÚµ÷ÓÃwait()¡¢notify()¡¢notifyAll()·½·¨¡£Ï̲߳»Äܵ÷ÓöÔÏóÉϵȴý»ò֪ͨµÄ·½·¨£¬³ý·ÇËüÓµÓÐÄǸö¶ÔÏóµÄËø¡£
wait()¡¢notify()¡¢notifyAll()¶¼ÊÇObjectµÄʵÀý·½·¨¡£Óëÿ¸ö¶ÔÏó¾ßÓÐËøÒ»Ñù£¬Ã¿¸ö¶ÔÏó¿ÉÒÔÓÐÒ»¸öÏß³ÌÁÐ±í£¬ËûÃǵȴýÀ´×Ô¸ÃÐźţ¨Í¨Öª£©¡£Ïß³Ìͨ¹ýÖ´ÐжÔÏóÉϵÄwait()·½·¨»ñµÃÕâ¸öµÈ´ýÁÐ±í¡£´ÓÄÇʱºòÆð£¬Ëü²»ÔÙÖ´ÐÐÈκÎÆäËûÖ¸Áֱµ½µ÷ÓöÔÏóµÄnotify()·½·¨ÎªÖ¹¡£Èç¹û¶à¸öÏß³ÌÔÚͬһ¸ö¶ÔÏóÉϵȴý£¬Ôò½«Ö»Ñ¡ÔñÒ»¸öỊ̈߳¨²»±£Ö¤ÒÔºÎÖÖ˳Ðò£©¼ÌÐøÖ´ÐС£Èç¹ûûÓÐÏ̵߳ȴý£¬Ôò²»²ÉÈ¡ÈκÎÌØÊâ²Ù×÷¡£
ÏÂÃæ¿´¸öÀý×Ó¾ÍÃ÷°×ÁË£º
/**
* ¼ÆËãÊä³öÆäËûÏß³ÌËø¼ÆËãµÄÊý¾Ý
*
* @author leizhimin 2008-9-15 13:20:38
*/
public class ThreadA {
public static void main(String[] args) {
ThreadB b = new
Ïà¹ØÎĵµ£º
±¾ÎÄÖ÷Ҫ̸һÏÂÃÜÂëѧÖеļÓÃܺÍÊý×ÖÇ©Ãû£¬ÒÔ¼°ÆäÔÚjavaÖÐÈçºÎ½øÐÐʹÓ᣶ÔÃÜÂëѧÓÐÐËȤµÄ»ï°é£¬ÍƼö¿´Bruce SchneierµÄÖø×÷£ºApplied Crypotography¡£ÔÚjdk1.5µÄ·¢Ðа汾Öа²È«ÐÔ·½ÃæÓÐÁ˺ܴóµÄ¸Ä½ø£¬Ò²ÌṩÁ˶ÔRSAËã·¨µÄÖ±½ÓÖ§³Ö£¬ÏÖÔÚÎÒÃÇ´ÓʵÀýÈëÊÖ½â¾öÎÊÌ⣨±¾ÎĽöÊÇ×÷Ϊ¼òµ¥½éÉÜ£©£º ......
// messages.hello.properties
id=001
name=ϧԵ
love=I think,therefor i am.
friends=Hi! {0} and {1} ,how are you?
// org.PropertiesUtil.java
package org;
import java.io.UnsupportedEncodingException;
import java.text.MessageFormat;
import java.util.Locale;
import java.util.MissingResourceEx ......
Öµ´«µÝ£º·½·¨µ÷ÓÃʱ£¬Êµ¼Ê²ÎÊý°ÑËüµÄÖµ´«µÝ¸ø¶ÔÓ¦µÄÐÎʽ²ÎÊý£¬·½·¨Ö´ÐÐÖÐÐÎʽ²ÎÊýÖµµÄ¸Ä±ä²»Ó°Ïìʵ¼Ê²Î ÊýµÄÖµ¡£
ÒýÓô«µÝ£ºÒ²³ÆΪ´«µØÖ·¡£·½·¨µ÷ÓÃʱ£¬Êµ¼Ê²ÎÊýµÄÒýÓÃ(µØÖ·£¬¶ø²»ÊDzÎÊýµÄÖµ)±»´«µÝ¸ø·½·¨ÖÐÏà¶ÔÓ¦µÄÐÎʽ²ÎÊý£¬ÔÚ·½·¨Ö´ÐÐÖУ¬¶ÔÐÎʽ²ÎÊýµÄ²Ù×÷ʵ¼ÊÉϾÍÊǶÔʵ¼Ê²ÎÊýµÄ²Ù×÷£¬·½·¨Ö´ÐÐÖÐÐÎʽ²ÎÊýÖµµÄ¸Ä±ä ......
JavaỊ̈߳ºÏß³Ì״̬µÄת»»
SCJP5ѧϰ±Ê¼Ç
Ò»¡¢Ïß³Ì״̬
Ï̵߳Ä״̬ת»»ÊÇÏ߳̿ØÖƵĻù´¡¡£Ïß³Ì״̬×ܵĿɷÖΪÎå´ó״̬£º·Ö±ðÊÇÉú¡¢ËÀ¡¢¿ÉÔËÐС¢ÔËÐС¢µÈ´ý/×èÈû¡£ÓÃÒ»¸öͼÀ´ÃèÊöÈçÏ£º
1¡¢ÐÂ״̬£ºÏ̶߳ÔÏóÒѾ´´½¨£¬»¹Ã»ÓÐÔÚÆäÉϵ÷ÓÃstart()·½·¨¡£
2¡¢¿ÉÔËÐÐ״̬£ºµ±Ïß³ÌÓÐ× ......
JavaỊ̈߳ºÏ̵߳Äͬ²½ÓëËø
Ò»¡¢Í¬²½ÎÊÌâÌá³ö
Ï̵߳Äͬ²½ÊÇΪÁË·ÀÖ¹¶à¸öÏ̷߳ÃÎÊÒ»¸öÊý¾Ý¶ÔÏóʱ£¬¶ÔÊý¾ÝÔì³ÉµÄÆÆ»µ¡£
ÀýÈ磺Á½¸öÏß³ÌThreadA¡¢ThreadB¶¼²Ù×÷ͬһ¸ö¶ÔÏóFoo¶ÔÏ󣬲¢ÐÞ¸ÄFoo¶ÔÏóÉϵÄÊý¾Ý¡£
public class Foo {
private int x = 100;
......