¡¾×ª¡¿Java³ÌÐòÐÔÄÜÓÅ»¯
Ò»¡¢±ÜÃâÔÚÑ»·Ìõ¼þÖÐʹÓø´ÔÓ±í´ïʽ
ÔÚ²»×ö±àÒëÓÅ»¯µÄÇé¿öÏ£¬ÔÚÑ»·ÖУ¬Ñ»·Ìõ¼þ»á±»·´¸´¼ÆË㣬Èç¹û²»Ê¹Óø´ÔÓ±í´ïʽ£¬¶øÊ¹Ñ»·Ìõ¼þÖµ²»±äµÄ»°£¬³ÌÐò½«»áÔËÐеĸü¿ì¡£
Àý×Ó£º
import java.util.Vector;
class CEL {
void method (Vector vector) {
for (int i = 0; i < vector.size (); i++) // Violation
; // ...
}
}
¸üÕý£º
class CEL_fixed {
void method (Vector vector) {
int size = vector.size ()
for (int i = 0; i < size; i++)
; // ...
}
}
¶þ¡¢Îª'Vectors' ºÍ 'Hashtables'¶¨Òå³õʼ´óС
JVMΪVectorÀ©³ä´óСµÄʱºòÐèÒªÖØÐ´´½¨Ò»¸ö¸ü´óµÄÊý×飬½«ÔÔÏÈÊý×éÖеÄÄÚÈݸ´ÖƹýÀ´£¬×îºó£¬ÔÏȵÄÊý×éÔÙ±»»ØÊÕ¡£¿É¼ûVectorÈÝÁ¿µÄÀ©´óÊÇÒ»¸öÆÄ·Ñʱ¼äµÄÊ¡£
ͨ³££¬Ä¬ÈϵÄ10¸öÔªËØ´óСÊDz»¹»µÄ¡£Äã×îºÃÄÜ׼ȷµÄ¹À¼ÆÄãËùÐèÒªµÄ×î¼Ñ´óС¡£
Àý×Ó£º
import java.util.Vector;
public class DIC {
public void addObjects (Object[] o) {
// if length > 10, Vector needs to expand
for (int i = 0; i< o.length;i++) {
v.add(o); // capacity before it can add more elements.
}
}
public Vector v = new Vector(); // no initialCapacity.
}
¸üÕý£º
×Ô¼ºÉ趨³õʼ´óС¡£
public Vector v = new Vector(20);
public Hashtable hash = new Hashtable(10);
²Î¿¼×ÊÁÏ£º
Dov Bulka, "Java Performance and Scalability Volume 1: Server-Side Programming
Techniques" Addison Wesley, ISBN: 0-201-70429-3 pp.55 – 57
Èý¡¢ÔÚfinally¿éÖйرÕStream
³ÌÐòÖÐʹÓ
Ïà¹ØÎĵµ£º
JavaÖÐͨ¹ýimplements SerializableÀ´ÊµÏÖ¶ÔÏóµÄÐòÁл¯¡£ÆäʵSerializable½Ó¿ÚÖв¢Ã»ÓÐÐèҪʵÏֵķ½·¨£¬×¢Ã÷ij¸öÀàimplements SerializableÖ»ÊÇΪÁ˱êʶ»ò±íÃ÷Õâ¸öÀà¿ÉÒÔ±»ÐòÁл¯¡£
ÄÇôʲôÊÇÐòÁл¯ÄØ£¬ÐòÁл¯ÓÖÓÐʲô×÷ÓÃÄØ£¿
Ò»¸öÀ࣬»ò ......
ÅжÏÌ⣺ÉùÃ÷int a = 10; ÅжÏÒÔÏÂ3¸öÔËËãÊÇ·ñÄܹ»·Ö±ðͨ¹ýJava±àÒëÆ÷£º
a = a/2; a = a/3; a = a*2.89;
½â£ºa = a*2.89;²»ÐУ¬a*2.89ÔËËã»áÌáÉý³ÉdoubleÀàÐÍ
Êý×éÓÐûÓÐlength()Õâ¸ö·½·¨? StringÓÐûÓÐlength()Õâ¸ö·½·¨£¿
½â£ºÊý×éûÓÐlength()Õâ¸ö·½·¨£¬ÓÐlengthµÄÊôÐÔ¡£
¡¡¡¡ StringÓÐÓÐlength()Õ ......
JDBC£º
|-- Êý¾Ý¿â»¥Áª¡£
|-- ÓÉSUN¹«Ë¾ËùÖÆ¶¨µÄÓÃÀ´·ÃÎÊÊý¾Ý¿âµÄ¹æ·¶¡£
|-- Êý¾Ý¿âÊý¾Ý <= ½»»¥ => Ó¦ÓóÌÐò¡£
JDBC°üº¬Ö÷ÒªÁ½¸ö²¿·Ö£º
|-- part 1.ÓÉSUN¹«Ë¾Öƶ¨µÄ¹æ·¶½Ó¿Ú
|-- ......
import java.io.*;
/**
* linux ÏÂcpu ÄÚ´æ ´ÅÅÌ jvmµÄʹÓÃ¼à¿Ø
* @author avery_leo
*
*/
public class TT {
/**
* »ñÈ¡cpuʹÓÃÇé¿ö
* @return
&nbs ......
JavaµÄÄÚ´æÄ£ÐÍJMM£¨Java Memory Model£©JMMÖ÷ÒªÊÇΪÁ˹涨ÁËÏ̺߳ÍÄÚ´æÖ®¼äµÄһЩ¹ØÏµ¡£¸ù¾ÝJMMµÄÉè¼Æ£¬ÏµÍ³´æÔÚÒ»¸öÖ÷ÄÚ´æ(Main Memory)£¬JavaÖÐËùÓÐʵÀý±äÁ¿¶¼´¢´æÔÚÖ÷´æÖУ¬¶ÔÓÚËùÓÐÏ̶߳¼Êǹ²ÏíµÄ¡£Ã¿ÌõÏ̶߳¼ÓÐ×Ô¼ºµÄ¹¤×÷ÄÚ´æ(Working Memory)£¬¹¤×÷ÄÚ´æÓÉ»º´æºÍ¶ÑÕ»Á½²¿·Ö×é³É£¬»º´æÖб£´æµÄÊÇÖ÷´æÖбäÁ¿µÄ¿½±´£¬»º´ ......