Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

How Java handles arguments of a class type.

=====suppose such a method:
public static void openFile(String fileName, PrintWriter stream) throws FileNotFoundException
{
   stream = new PrintWriter(fileName);
}
=====then we want to use it this way:
PrintWriter toFile = null;
try
{
   openFile("data.txt", toFile);
}
*****After this code is executed, the value of toFile is still null. The file that was opened in the method openFile went away when the method ended. The problem has to do with how Java handles arguments of a class type.
"These arguments are passed to the method as memory addresses that cannot be changed. The state of the object at the memory address normally can be changed, but the memory address itself cannot be changed"!


Ïà¹ØÎĵµ£º

Java¶àÏ̱߳à³Ì»·¾³Öе¥ÀýģʽµÄʵÏÖ

Abstract
        
ÔÚ¿ª·¢ÖУ¬Èç¹ûij¸öʵÀýµÄ´´½¨ÐèÒªÏûºÄºÜ¶àϵͳ×ÊÔ´£¬ÄÇôÎÒÃÇͨ³£»áʹÓöèÐÔ¼ÓÔØ»úÖÆ£¬Ò²¾ÍÊÇ˵ֻÓе±Ê¹Óõ½Õâ¸öʵÀýµÄʱºò²Å»á´´½¨Õâ¸öʵÀý£¬Õâ¸öºÃ´¦ÔÚ
µ¥ÀýģʽÖеõ½Á˹㷺ӦÓá£Õâ¸ö»úÖÆÔÚsingle-threaded»·¾³ÏµÄʵÏַdz£¼òµ¥£¬È»¶øÔÚmulti-threaded» ......

Java JNIÉî¶È·ÖÎöÓëʵ¼ù


Java JNIÊÇJava Native InterfaceµÄËõд£¬ÖÐÎÄ¿ÉÒëΪJava±¾µØµ÷Óá£Java Native Interface (JNI)±ê×¼³ÉΪjavaƽ̨µÄÒ»²¿·Ö£¬ËüÔÊÐíJava´úÂëºÍÆäËûÓïÑÔдµÄ´úÂë½øÐн»»¥¡£±¾ÎÄÏòÄúÏêϸ½éÉÜJava JNI¡£
Java »·¾³ºÍÓïÑÔ¶ÔÓÚÓ¦ÓóÌÐò¿ª·¢À´ËµÊǷdz£°²È«ºÍ¸ßЧµÄ¡£µ«ÊÇ£¬Ò»Ð©Ó¦ÓóÌÐòÈ´ÐèÒªÖ´Ðд¿ Java ³ÌÐòÎÞ·¨Íê³ÉµÄһЩÈÎÎ ......

WindowsÏÂJAVAºÍANTºÍSDK»·¾³±äÁ¿ÉèÖÃ

ÒÔÏÂÉèÖÃWinXP¼°ÒÔÉÏÓû§£¬ÓÒ¼üµã»÷ÎҵĵçÄÔ->ÊôÐÔ->¸ß¼¶->»·¾³±äÁ¿£¬ÉèÖü´¿É¡£ÉèÖÃÍê³ÉºóÐèÖØÐÂÆô¶¯ÃüÁîÌáʾ·û²ÅÄÜÉúЧ¡£¾ßÌåÈçÏ£º
JAVA»·¾³±äÁ¿ÉèÖÃ
WindowsÏÂJAVAÓõ½µÄ»·¾³±äÁ¿Ö÷ÒªÓÐ3¸ö£¬JAVA_HOME¡¢CLASSPATH¡¢PATH¡£
JAVA_HOMEÖ¸ÏòµÄÊÇJDKµÄ°²×°Â·¾¶£¬ÈçD:\Program Files\IBM\Java50£¬ÔÚÕâ·¾¶ÏÂÄãÓ¦¸ÃÄܹ»Õ ......

ɵB×Ô¼º¿´µÄjava±Ê¼Ç£º½âÎöXML

 ½ñÍíÁÄÁËÒ»ÍíÌ죬±ß¿´java ±ßÁÄÌ죬ûÓм¯Öо«ÉñÈ¥¿´¡£Ã»¸ã¶®java¶ÁÈ¡xml µÄ»úÖÆ¡£¿´ÁËһЩÊéÏÈ°ÑËû¼Ç¼һÏ¡£²ÉÓÃDOMÎĵµ¶ÔÏóÄ£ÐÍ£¬µÚÒ»ÖÖ·½·¨À´½âÎö¡£Ìý˵ÕâÖÖ½âÎö»áÓÐһЩȱµã£¬²»¹ý×ÜËãµ÷ÊÔͨÁË£¬ËãÊÇÒ»ÖÖ½ø²½¡£
<?xml version="1.0" encoding="utf-8"?>
<item>
  <node>aa</node&g ......

Java synchronized

ÖÚËùÖÜÖª£¬ÔÚJava¶àÏ̱߳à³ÌÖУ¬Ò»¸ö·Ç³£ÖØÒªµÄ·½Ãæ¾ÍÊÇÏ̵߳Äͬ²½ÎÊÌâ¡£
¹ØÓÚÏ̵߳Äͬ²½£¬Ò»°ãÓÐÒÔϽâ¾ö·½·¨£º

1.
ÔÚÐèҪͬ²½µÄ·½·¨µÄ·½·¨Ç©ÃûÖмÓÈësynchronized¹Ø¼ü×Ö¡£

2.
ʹÓÃsynchronized¿é¶ÔÐèÒª½øÐÐͬ²½µÄ´úÂë¶Î½øÐÐͬ²½¡£

3. ʹÓÃJDK
5ÖÐÌṩµÄjava.util.concurrent.lock°üÖеÄLock¶ÔÏó¡£ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ