JavaÖеĴúÀí¼¼Êõ
JavaÖеĴúÀí¼¼Êõ
ÒÔǰ·¢¹ýÒ»±éblog½²µ½ÁË´úÀí¼¼Êõ£¬·¢ÏÖÀí½âÓÐЩ´íÎó£¬×î½üÓÐÓÖÁËЩеÄÀí½â£¬×ܽáÒ»ÏÂ
´úÀí¼¼Êõ¿ÉÒÔ·ÖΪstatic proxyºÍdynamic proxy£¬Á½ÖÖ´úÀí¼¼ÊõÓÃ;Ҳ²»Í¬
static proxy ÓõĽÏÉÙ£¬ÒòΪÿ´úÀíÒ»¸ö¶ÔÏ󣬶¼ÐèÒª´´½¨Ò»¸ö´úÀíÀ࣬ÏÔÈ»²»ÊÇÎÒÃÇËùÆÚÍûµÄ
dynamic proxyÔòÓõıȽϹ㷺£¬ÒòΪ²»ÐèÒªÉú³É´úÀíÀ࣬ÐèÒª´úÀíij¸ö¶ÔÏóʱ£¬Ö±½ÓÉú³É¼´¿É
ÏÂÃæÖ÷Òª½²Ò»ÏÂdynamic proxy
˵µ½´úÀí£¬ÎÒÃÇÓ¦¸ÃÖªµÀ´úÀí¶ÔÏóºÍ±»´úÀí¶ÔÏó
Ê×ÏÈдһ¸ö±»´úÀí¶ÔÏóµÄÀà,±»´úÀíµÄÀàÐèҪʵÏÖÒ»¸ö½Ó¿Ú£¬ÖÁÓÚΪʲô·ÇҪʵÏÖ½Ó¿Ú£¬ÒÔǰ²»Ã÷°×£¬ÏÖÔÚÓÐЩÃ÷°×£¬×Ô¼º´§Ä¦µÄ
²»ÖªµÀ¶Ô²»¶Ô
ÒòΪÎÒÃÇÔÚ´î¿ò¼ÜµÄʱºò£¬ÓÐЩʱºò²¢²»ÖªµÀÔÛÃÇÒª´úÀíʲô£¬ËùÒÔʹÓÃÒ»¸ö½Ó¿Ú£¬µ±ÒÔºóÔÛÃÇÐèÒª´úÀíij¸öÀàµÄ¶ÔÏóʱ£¬Ö»ÐèÒª
ÈÃÕâ¸öÀàʵÏÖÕâ¸ö½Ó¿Ú¾ÍºÃÁË£¬ÕâÊÇÎÒµÄÀí½â
Æä´Î£¬JavaAPIÆäʵÌṩÁË´úÀíÀ࣬Æäµ×²ãʵÏֵķ½·¨Óõ½Á˽ӿڣ¬ËùÒÔÔÛÃÇ»¹ÊÇŪһ¸ö½Ó¿Ú°É...
interface Action {
void sing();
void dance();
}
public class Person {
@Override
public void sing() {
System.out.println("singing...");
}
@Override
public void dance() {
System.out.println("dancing...");
}
}
ÕâÑùÒ»¸ö¼òµ¥µÄ±»´úÀí¶ÔÏóµÄÉú³ÉÀà¾ÍдºÃÁË£¬¾¹ýÉÏÃæµÄ½éÉÜ£¬ÎÒÃÇÖªµÀ£¬¶¯Ì¬´úÀíÊDz»ÐèÒª´´½¨´úÀíÀàµÄ£¬Ö±½ÓʹÓÃJavaAPIÖÐ
ÌṩµÄProxy´úÀíÀàÀ´»ñµÃ´úÀí¶ÔÏó
public class Demo {
public static void main(String args[]) {
//¼ÈÈ»ÊÇ´úÀí£¬ÔòÏÈnew³öÔÛÃÇÐèÒª±»´úÀíµÄ¶ÔÏó
final Action person = new Person();//ÕâÀïÊÇÓÃfinalÊÇÒòΪÏÂÃæµÄÄÚ²¿ÀàÖÐÓõ½Á˴˶ÔÏó
/*²é¿´APIÖеÄProxy´úÀíÀ࣬·¢ÏÖÓиö·½·¨newPrxoyInstance¿ÉÒÔ»ñµÃ´úÀí¶ÔÏó*/
Object proxy = Proxy.newProxyInstance(args1, args2, args3);
/*´Ë·½·¨ÓÐÈý¸ö²ÎÊý£¬Ò»Ò»½éÉÜ
ÆäʵÎÒÃÇÀ©É¢Ë¼Î¬Ò»Ï£¬Óö¯Ì¬´úÀí¼¼ÊõÎÞÐè´´½¨´úÀíÀ࣬ÄÇôÔÛÃÇͨ¹ýProxy´úÀíÀàµÄ·½·¨»ñµÃµÄ´úÀí¶ÔÏó
ÈçºÎ¸ú±»´úÀíµÄ¶ÔÏó²úÉú¹ØÁªÄØ£¿ÏÔÈ»£¬¸ú·½·¨ÖеIJÎÊýÓйØÏµ
args1£ºÕâ¸ö²ÎÊýÊÇÒ»¸öÀà¼ÓÔØÆ÷£¬ÄĸöÀàµÄ£¿»¹ÓÃ˵Â𣿵±È»ÊÇÔÛÃDZ»´úÀí¶ÔÏóµÄÄǸöÀàµÄ¼ÓÔØÆ÷ÁË£¬ÄѵÀÊǰ¢Ã¨
Ïà¹ØÎĵµ£º
1 ×÷ÓÃÓò
javaÖÐ×÷ÓÃÓòµÄ·¶Î§ÓÉ»¨À¨ºÅ±êʾ¡£
2¹ØÓÚstatic
À¬»øÊÕ¼¯Æ÷Ö»ÖªµÀËѼ¯ÄÇЩÓÐnewÔËËã·û·ÖÅäµÄÄڴ棬²»ÖªµÀÈçºÎÊÍ·ÅÌØÊâÄÚ´æ¡£
Èç¹ûÀ¬»øÊÕ¼¯Æ÷×¼±¸»ØÊÕ¶ÔÏóµÄÄڴ棬ËüÊ×Ïȵ÷ÓÃfinalize()£¬¶øÇÒÖ»ÓÐÔÚÏÂÒ»´ÎÀ¬»øËѼ¯¹ý³ÌÖУ¬²Å»áÕæÕý»ØÊÕ¶ÔÏóµÄÄÚ´æ¡£ËùÒÔ˵Èç¹ûʹÓÃ
final ......
http://iccyx.cn/2007/04/21/java-console-text-area-input-stream/
ÍêÕûÇë¿´ÉÏURL
2001 Äê 10 ÔÂ 16 ÈÕ
ÔÚJava¿ª·¢ÖУ¬¿ØÖÆÌ¨Êä³öÈÔÊÇÒ»¸öÖØÒªµÄ¹¤¾ß£¬µ«Ä¬ÈϵĿØÖÆÌ¨Êä³öÓÐן÷ÖÖ¸÷ÑùµÄ¾ÖÏÞ¡£±¾ÎĽéÉÜÈçºÎÓÃJava¹ÜµÀÁ÷½ØÈ¡¿ØÖÆÌ¨Êä³ö£¬·ÖÎö¹ÜµÀÁ÷Ó¦ÓÃÖÐÓ¦¸Ã×¢ÒâµÄÎÊÌ⣬ÌṩÁ˽ØÈ¡Java³ÌÐòºÍ·ÇJava³ÌÐò¿ØÖÆÌ¨Êä³öµÄÊ ......
[Image]ʹÓà Java 2D È¡µÃͼÏñÉÏÖ¸¶¨Î»ÖÃÏñËØµÄ rgb ÑÕÉ«·ÖÁ¿
CMYKÅäÉ«±í
RGBÅäÉ«±í
ʵЧ
Ó¢ÎÄÃû³Æ
RGB
16É«
PaleTurquoise1
187 255 255
#BBFFFF
PaleTurquoise2
174 238 238
#AEEEEE
PaleTurquoise3
150 205 205
#96CDCD
PaleTurquoise4
102 139 139
#668B8B
µÈµÈ. ......
½ü³õ²½½Ó´¥ÁËÏÂJava¼ÓÃܺÍÊý×ÖÇ©ÃûµÄÏà¹ØÄÚÈÝ£¬ÎÒѧϰµÄ¹ý³Ì´ó¸Å·ÖÎå²½£º
1£©ÏûÏ¢ÕªÒª
2£©Ë½Ô¿¼ÓÃÜ
3£©¹«Ô¿¼ÓÃÜ
4£©Êý×ÖÇ©Ãû
5) Êý×ÖÖ¤Êé
ÏÂÃæµÄ´úÂëÊǵڶþ²¿·Ö£ºË½Ô¿¼ÓÃÜ
Ï£ÍûÄÜΪ¸Õ¸Õ½Ó´¥Õâ¸öµÄÅóÓÑÃÇÊ¡µãÊÂ
package security;
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import ......
import java.util.Date;
import java.text.SimpleDateFormat; //ΪÁËÏÔʾʱ¼ä¶ø¼Ó
Date date = new Date(); //»ñµÃϵͳʱ¼ä.
String nowTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
//½«Ê±¼ä¸ñʽת»»³É·ûºÏTimestampÒªÇóµÄ¸ ......