Java ±à³ÌµÄ¶¯Ì¬ÐÔ£¬µÚ 7 ²¿·Ö: Óà BCEL Éè¼Æ×Ö½ÚÂë
Apache Byte Code Engineering Library (BCEL)¿ÉÒÔÉîÈë Java
ÀàµÄ×Ö½ÚÂë¡£¿ÉÒÔÓÃËüת»»ÏÖÓеÄÀà±íʾ»òÕß¹¹½¨ÐµÄÀ࣬ÒòΪ BCEL ÔÚµ¥¶ÀµÄ JVM
Ö¸Áî¼¶±ðÉϽøÐвÙ×÷£¬ËùÒÔ¿ÉÒÔÈÃÄú¶Ô´úÂëÓÐ×îÇ¿´óµÄ¿ØÖÆ¡£²»¹ý£¬ÕâÖÖÄÜÁ¦µÄ´ú¼ÛÊǸ´ÔÓÐÔ¡£ÔÚ±¾ÎÄÖУ¬Java ¹ËÎÊ Dennis Sosnoski
½éÉÜÁË BCEL µÄ»ù±¾ÄÚÈÝ£¬²¢Òýµ¼¶ÁÕßÍê³ÉÒ»¸öʾÀý BCEL Ó¦ÓóÌÐò£¬ÕâÑùÄú¾Í¿ÉÒÔ×Ô¼º¾ö¶¨ÊÇ·ñÖµµÃÒÔÕâÖÖ¸´ÔÓÐÔÀ´»»È¡ÕâÖÖÄÜÁ¦¡£
ÔÚ±¾ÏµÁеÄ×îºóÈýƪÎÄÕÂÖÐ,ÎÒչʾÁËÈçºÎÓà Javassist ¿ò¼Ü²Ù×÷Àà¡£Õâ´ÎÎÒ½«ÓÃÒ»Öֺܲ»Í¬µÄ·½·¨²Ù×Ý×Ö½ÚÂ뗗ʹÓà Apache Byte
Code Engineering Library (BCEL)¡£Óë Javassist ËùÖ§³ÖµÄÔ´´úÂë½Ó¿Ú²»Í¬£¬BCEL ÔÚʵ¼ÊµÄ JVM
Ö¸Áî²ã´ÎÉϽøÐвÙ×÷¡£ÔÚÏ£Íû¶Ô³ÌÐòÖ´ÐеÄÿһ²½½øÐпØÖÆÊ±£¬µ×²ã·½·¨Ê¹ BCEL ºÜÓÐÓ㬵«Êǵ±Á½Õß¶¼¿ÉÒÔʤÈÎʱ£¬ËüҲʹ BCEL µÄʹÓñÈ
Javassist Òª¸´Ôӵöࡣ
ÎÒ½«Ê×ÏÈÌÖÂÛ BCEL »ù±¾Ìåϵ½á¹¹£¬È»ºó±¾ÎĵĴ󲿷ÖÄÚÈݽ«ÌÖÂÛÓà BCEL ÖØÐ¹¹½¨ÎҵĵÚÒ»¸ö Javassist Àà²Ù×÷µÄÀý×Ó¡£×îºó¼òÒª½éÉÜ
BCEL °üÖÐÌṩµÄһЩ¹¤¾ßºÍ¿ª·¢ÈËÔ±Óà BCEL ¹¹½¨µÄһЩӦÓóÌÐò¡£
BCEL Àà·ÃÎÊ
BCEL ʹÄúÄܹ»Í¬Ñù¾ß±¸ Javassist ÌṩµÄ·ÖÎö¡¢±à¼ºÍ´´½¨ Java ¶þ½øÖÆÀàµÄËùÓлù±¾ÄÜÁ¦¡£BCEL µÄÒ»¸öÃ÷ÏÔÇø±ðÊÇÿÏîÄÚÈݶ¼Éè¼ÆÎªÔÚ
JVM »ã±àÓïÑԵļ¶±ð¡¢¶ø²»ÊÇ Javassist ËùÌṩµÄÔ´´úÂë½Ó¿ÚÉϹ¤×÷¡£³ýÁ˱íÃæÉϵIJî±ð£¬»¹ÓÐһЩ¸üÉî²ãµÄÇø±ð£¬°üÀ¨ÔÚ BCEL ÖÐ×é¼þµÄÁ½¸ö²»Í¬²ã´Î½á¹¹µÄʹÓ×—Ò»¸öÓÃÓÚ¼ì²éÏÖÓеĴúÂ룬ÁíÒ»¸öÓÃÓÚ´´½¨Ð´úÂë¡£ÎÒ¼Ù¶¨¶ÁÕßÒѾͨ¹ý±¾ÏµÁÐÇ°ÃæµÄÎÄÕÂÊìϤÁË
Javassist£¨Çë²ÎÔIJàÀ¸
²»Òª´í¹ý±¾ÏµÁÐµÄÆäÓಿ·Ö
£©¡£
Òò´ËÎÒ½«Ö÷Òª½éÉÜÔÚ¿ªÊ¼Ê¹Óà BCEL ʱ£¬¿ÉÄÜ»áÈÃÄú¸Ðµ½ÃÔ»óµÄÄÇЩ²»Í¬Ö®´¦¡£
Óë Javassist Ò»Ñù£¬ BCEL ÔÚÀà·ÖÎö·½ÃæµÄ¹¦ÄÜ»ù±¾ÉÏÓë Java ƽ̨ͨ¹ý Relfection API Ö±½ÓÌṩµÄ¹¦ÄÜÊÇÖØ¸´µÄ¡£ÕâÖÖÖØ¸´¶ÔÓÚÀà²Ù×÷¹¤¾ßÏäÀ´ËµÊDZØÒªµÄ£¬ÒòΪһ°ã²»Ï£ÍûÔÚËùÒª²Ù×÷µÄÀà±»ÐÞ¸Ä
֮ǰ
¾Í×°ÔØËüÃÇ¡£
²»Òª´í¹ý±¾ÏµÁÐµÄÆäÓಿ·Ö
µÚ 1 ²¿·Ö£º “
ÀàºÍÀà×°Èë
”£¨2003
Äê 4 Ô£©
µÚ 2 ²¿·Ö£¬“
ÒýÈë·´Éä
”
£¨2003 Äê 6 Ô£©
µÚ 3 ²¿·Ö£¬“
Ó¦Ó÷´Éä
”
£¨2003 Äê 7 Ô£©
µÚ 4 ²¿·Ö£¬ “
ÓÃ
Javassist ½øÐÐÀàת»»
&rdquo
Ïà¹ØÎĵµ£º
¸ÕÔÚÒ»¸ö½Ð51ctoµÄÍøÕ¾¿´µ½µÄ£¬¸Ð¾õÕâ¸çÃÇ×ܽáµÄ±È½ÏÈ«ÁË£¬Àý×Ó¶¼ºÜ¼òµ¥£¬¶¼ÄÜ˵Ã÷ÎÊÌâ¡£Êղأ¬ºÇºÇ¡£
»¹ÓоÍÊǼ¯ºÏÀïÓõĵü´úÆ÷Ò²ÊÇÄÚ²¿ÀàµÄÉè¼Æ£¬ÎÒÒ²¾ÍÖªµÀÕâÒ»¸ö£¬¹þ¹þ¡£
ÒÔÏÂΪÔÎÄ£º
¶ÔÓÚJavaÄÚ²¿À࣬´ó¼Òʵ¼ÊÉÏÁ˽ⲻ¶à¡£ÔÚÕâÀïÎÒÃÇÒÔʵ¼Ê´úÂëµÄÐÎʽ£¬Îª´ó¼ÒÏêϸ½éÉÜJavaÄÚ²¿ÀàÔÚGUIÉè¼ÆµÄ×÷Óá£
JavaÄÚ²¿ÀàÆäʵ ......
±¾ÎÄÖ÷ÒªÊÇΪ¿ªÔ´ÏîÄ¿simplejee
дµÄ£¬µ«»ù±¾»¹ÊÇͨÓõġ£
¿ª·¢java³ÌÐò×îµÍµÄÒªÇóÊÇÓÐjdkºÍÎı¾±à¼Æ÷¡£²»¹ý¶àÊýÀ´ËµÎÒÃǶ¼»áʹÓÃһЩ¸¨ÖúµÄÎı¾±à¼Æ÷(editplus,UltraEdit)ÉõÖÁ
¼¯³É¿ª·¢»·¾³£¨IDE£©£¬Èçeclipse£¬IntelliJ
IDEAµÈ£¬ÎÒÃÇ·ÅÔÚ´úÂë¿âÀïµÄ´úÂ벢ûÓÐÏÞ¶¨¿ª·¢¹¤¾ß£¬Ò²Ã»Óн«ºÍ¿ª·¢¹¤¾ßÏà¹ØµÄÅäÖÃÎļþÌá½»µ½ ......
ÔÚjavaÈç¹ûÒ»¸ö³ÉÔ±±»ÉùÃ÷Ϊstatic£¬Ëü¾ÍÄܹ»ÔÚËüµÄÀàµÄÈκζÔÏó´´½¨Ö®Ç°±»·ÃÎÊ£¬¶ø²»±ØÒýÓÃÈκζÔÏó¡£Äã¿ÉÒÔ½«·½·¨ºÍ±äÁ¿¶¼ÉùÃ÷Ϊstatic¡£static ³ÉÔ±µÄ×î³£¼ûµÄÀý×ÓÊÇmain( ) ¡£ÒòΪÔÚ³ÌÐò¿ªÊ¼Ö´ÐÐʱ±ØÐëµ÷ÓÃmain() £¬ËùÒÔËü±»ÉùÃ÷Ϊstatic¡£
ÓÐʱÄãÏ£Íû¶¨ÒåÒ»¸öÀà³ÉÔ±£¬Ê¹ËüµÄʹÓÃÍêÈ«¶ÀÁ¢ÓÚ¸ÃÀàµÄÈκζÔÏó¡£Í¨³ ......
1¡¢ÀûÓÃSystem.getProperty()º¯Êý»ñÈ¡µ±Ç°Â·¾¶£º
System.out.println(System.getProperty("user.dir"));//user.dirÖ¸¶¨Á˵±Ç°µÄ·¾¶
2¡¢Ê¹ÓÃFileÌṩµÄº¯Êý»ñÈ¡µ±Ç°Â·¾¶£º
File directory = new File("");//É趨Ϊµ±Ç°Îļþ¼Ð
try{
System.out.println(directory.get ......
package com;
import java.util.*;
public class WhatDay {
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
c.setTime(new Date(System.currentTimeMillis()));
int dayOfWeek = c.get(Calendar.DAY_OF_WEEK);
switch (dayOfWeek) {
ca ......