Effective Java ѧϰ±Ê¼Ç£¨5£©
¾¡Á¿¸´ÓöÔÏ󣬶ø²»ÊÇ´´½¨ÐµĶÔÏó£¬ÌرðÊǵ±Ò»¸ö¶ÔÏóÊÇimmutable£¨²»¿É¸Ä±ä£©µÄʱºò¡£
ÈçString¶ÔÏó£¬
String s= new String(“String”); ǧÍò²»ÒªÕâÑù×ö£¬ÒòΪÕâÀïʵ¼ÊÉÏ´´½¨ÁËÁ½¸ö¶ÔÏó¡£
Òª±ÜÃâ³öÏÖÕâÑùµÄÇé¿ö£¬
1ÊÇ¿ÉÒÔÓþ²Ì¬¹¤³§º¯Êý£¬À´½â¾ö£¬ÈçÀà¿âÖеÄBoolean.valueOf(“true”)£¬ÕâÖÖ·½Ê½ÒªÓÅÓÚnew Boolean(“true”);
2.ÊǾ¡Á¿¸´ÓöÔÏó¡£
¿´ÊéÖеÄÀý×Ó¡£
public class Person {
private final Date birthDate;
public boolean isBabyBoomer() {
Calendar gmtCal = Calendar.getInstance(TimeZone.getTimeZone("GMT"));
gmtCal.set(1946, Calendar.JANUARY, 1, 0, 0, 0);
Date boomStart = gmtCal.getTime();
gmtCal.set(1965, Calendar.JANUARY, 1, 0, 0, 0);
Date boomEnd = gmtCal.getTime();
return birthDate.compareTo(boomStart) >= 0 && birthDate.compareTo(boomEnd) < 0;
}
}
ÕâÀÿ´Îµ÷ÓÃisBabyBoomer¾Í»á´´½¨Á½¸öData¶ÔÏó£¬Ò»¸öCalendar¶ÔÏóºÍTimeZone¶ÔÏó.
¸Ä½ø°æ£º
class Person {
private final Date birthDate;
private static final Date BOOM_START;
&nb
Ïà¹ØÎĵµ£º
ÔÚ±àдһ¸öÀàʱ£¬Èç¹û¸ÃÀàÖеĴúÂë¿ÉÄÜÔËÐÐÓÚ¶àÏ̻߳·¾³Ï£¬ÄÇô¾ÍÒª¿¼ÂÇͬ²½µÄÎÊÌâ¡£ÔÚJavaÖÐÄÚÖÃÁËÓïÑÔ¼¶µÄͬ²½ÔÓsynchronized£¬ÕâÒ²´ó´ó¼ò»¯ÁËJavaÖжàÏß³Ìͬ²½µÄʹÓá£
ÎÒÃÇÊ×Ïȱàдһ¸ö·Ç³£¼òµ¥µÄ¶àÏ̵߳ijÌÐò£¬ÊÇÄ£ÄâÒøÐÐÖеĶà¸öÏß³Ìͬʱ¶Ôͬһ¸ö´¢ÐîÕË»§½øÐдæ¿î¡¢È¡¿î²Ù×÷µÄ¡£
¡¡¡¡ÔÚ³ÌÐòÖÐÎÒÃÇÊ¹Ó ......
1. Òò×Ó
ÉϴνéÉÜÁË¡¶JAVAʵÏÖAES¼ÓÃÜ¡·£¬ÖмäÌáµ½½üЩÄêDESʹÓÃÔ½À´Ô½ÉÙ£¬ÔÒò¾ÍÔÚÓÚÆäʹÓÃ56λÃÜÔ¿£¬±È½ÏÈÝÒ×±»ÆÆ½â£¬½üЩÄêÀ´Öð½¥±»AESÌæ´ú£¬AESÒѾ±ä³ÉĿǰ¶Ô³Æ¼ÓÃÜÖÐ×îÁ÷ÐÐËã·¨Ö®Ò»£»AES¿ÉÒÔʹÓÃ128¡¢192¡¢ºÍ256λÃÜÔ¿£¬²¢ÇÒÓÃ128λ·Ö×é¼ÓÃܺͽâÃÜÊý¾Ý¡£±¾Îľͼòµ¥½éÉÜÈçºÎͨ¹ ......
java socketͨÐÅ
TCP¿Í»§¶Ë£º
import java.net.*;
import java.io.*;
public class Client {
static Socket server;
public static void main(String[] args) throws Exception {
server = new Socket(InetAddress.getLocalHost(), 23);
BufferedReader in = new BufferedReader(new InputStreamReader ......
JAVA³ÌÐòµÄÍâ±í×ÜÊÇÒ»°åÒ»Ñ۵ģ¬¿´¶àÁËÄÑÃâÉóÃÀÆ£ÀÍ£¬Äܲ»ÄÜʹÎÒÃǵÄJAVA³ÌÐòÍâ¹Û±äµÃ¸üÃÀ¹Û¸ü¶ÀÌØÄØ£¿´ð°¸Êǿ϶¨µÄ£¬ÎÒÃÇ¿ÉÒÔÈÃJAVA³ÌÐò¸ù¾ÝͼƬÀ´Éú³É×Ô¶¨ÒåµÄ²»¹æÔò´°Ìå¡£±ÈÈçÏÂͼµÄÕâÖÖÍâ¹Û£º
ͼÖеÄÕâ¸öÈËÎï(ÀÙÃ×ÀòÑÇ)±ãÊǶ¨ÒåºÃµÄ²»¹æÔò´°Ì壬ÔõôÑù£¿ºÜƯÁÁ°É£¡ÄÇôÈÃÎÒÃÇ¿ªÊ¼Ñ§Ï°°É¡£
Ê×ÏÈÒªË ......