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

java ASM

Java ASM
ÎÒÃÇÖªµÀJavaÊǾ²Ì¬ÓïÑÔ£¬¶øpython¡¢rubyÊǶ¯Ì¬ÓïÑÔ£¬Java³ÌÐòÒ»µ©Ð´ºÃºÜÄÑÔÚÔËÐÐʱ¸ü¸ÄÀàµÄÐÐΪ£¬¶øpython¡¢ruby¿ÉÒÔ¡£
²»¹ý»ùÓÚbytecode²ãÃæÉÏÎÒÃÇ¿ÉÒÔ×öһЩÊֽţ¬À´Ê¹Java³ÌÐò¶àһЩÁé»îÐÔºÍMagic£¬ASM¾ÍÊÇÕâÑùÒ»¸öÓ¦Óù㷺µÄ¿ªÔ´¿â¡£
ASM is a Java bytecode manipulation framework. It can be used to dynamically generate stub classes or other proxy classes,
directly in binary form, or to dynamically modify classes at load time, i.e., just before they are loaded into the Java
Virtual Machine.
ASMÍê³ÉÁËBCELºÍSERPͬÑùµÄ¹¦ÄÜ£¬µ«ASM
Ö»ÓÐ30¶àk£¬¶øºóÁ½Õß·Ö±ðÊÇ350kºÍ150k¡£apacheÕæÊÇÔ½À´Ô½¹ýÆøÁË¡£
ÈÃÎÒÃÇÀ´¿´Ò»¸öASMµÄ¼òµ¥Àý×ÓHelloworld.java£¬ËüÉú³ÉÒ»¸öExampleÀàºÍÒ»¸ömain·½·¨£¬main·½·¨´òÓ¡"Hello world!"Óï¾ä:
Java´úÂë
import java.io.FileOutputStream;   
import java.io.PrintStream;   
  
import org.objectweb.asm.ClassWriter;   
import org.objectweb.asm.MethodVisitor;   
import org.objectweb.asm.Opcodes;   
import org.objectweb.asm.Type;   
import org.objectweb.asm.commons.GeneratorAdapter;   
import org.objectweb.asm.commons.Method;   
  
public class Helloworld extends ClassLoader implements Opcodes {   
  
  public static void main(final String args[]) throws Exception {   
  
    // creates a ClassWriter for the Example public class,   
    // which inherits from Object   
  
     ClassWriter cw = new ClassWriter(0);   
     cw.visit(V1_1, ACC_PUBLIC, "Example", null, "java/lang/Object", null);   
     MethodVisitor mw = cw.visitMethod(ACC_PUBLIC, "<init>", "()V", null,   
        null);   
     mw.visitVarInsn(ALOAD, 0);   
 


Ïà¹ØÎĵµ£º

Java Collection FramWork

jdk
µÄ¼¯ºÏ¿ò¼ÜµÄÖ÷Ìå½á¹¹£º
½Ó¿Ú
¼òÊö
ʵÏÖ
²Ù×÷ÌØÐÔ
³ÉÔ±ÒªÇó
Set
³ÉÔ±²»ÄÜÖØ¸´
HashSet
ÍⲿÎÞÐòµØ±éÀú³ÉÔ±¡£
³ÉÔ±¿ÉΪÈÎÒâObject×ÓÀàµÄ¶ÔÏ󣬵«Èç
¹û¸²¸ÇÁËequals·½·¨£¬Í¬Ê±×¢ÒâÐÞ¸ÄhashCode·½·¨¡£
TreeSet
ÍⲿÓÐÐòµØ±éÀú³ÉÔ±£»¸½¼ÓʵÏÖÁË
SortedSet, Ö§³Ö×Ó¼¯µÈÒªÇó˳ÐòµÄ²Ù×÷
³ÉÔ±ÒªÇóʵÏÖcaparable ......

Java³ÌÐòÔ±µÄ֪ʶ¼Ü¹¹Ç³Îö


×÷ΪJava³ÌÐòÔ±À´Ëµ£¬×îÍ´¿àµÄÊÂÇéιýÓÚ¿ÉÒÔÑ¡ÔñµÄ·¶Î§Ì«¹ã£¬¿ÉÒÔ¶ÁµÄÊéÌ«¶à£¬ÍùÍùÈÝÒ×ÎÞËùÊÊ´Ó¡£ÎÒÏë¾ÍÎÒ×Ô¼º¶Á¹ýµÄ¼¼ÊõÊé¼®ÖÐÌôÑ¡³öÀ´Ò»Ð©£¬°´ÕÕѧϰµÄÏȺó˳Ðò£¬ÍƼö¸ø´ó¼Ò£¬ÌرðÊÇÄÇЩÏë²»¶ÏÌá¸ß×Ô¼º¼¼ÊõˮƽµÄJava³ÌÐòÔ±ÃÇ¡£
Ò»¡¢Java±à³ÌÈëÃÅÀà
¶ÔÓÚûÓÐJava±à³Ì¾­ÑéµÄJava³ÌÐòÔ±ÒªÈëÃÅ£¬Ëæ±ã¶ÁʲôÈëÃÅÊé¼®¶¼Ò» ......

ÈçºÎ×Ôѧjava³ÉΪjava¸ßÊÖ

ºÜ¶àÍøÓÑ×ÉѯѧϰJavaÓÐûÓÐʲô½Ý¾¶,ÎÒ˵“ÎÞËû£¬Î¨ÊÖÊì¶û”¡£µ«ÊÇÉÐѧÌÃÔ¸Ò⽫һЩ¾­Ñéд³öÀ´£¬ÒÔ±ãºóÀ´ÕßÉÙ×ßÍä·,°ïÖú±ðÈËÊÇ×î´óµÄ¿ìÀÖÂ
ÒªÏëѧºÃJava£¬Ê×ÏÈÒªÖªµÀJavaµÄ´óÖ·ÖÀà¡£ÎÒÃÇÖªµÀ£¬×Ô´ÓSunÍÆ³öJavaÒÔÀ´£¬¾ÍÁ¦Í¼Ê¹Ö®ÎÞËù²»°ü£¬ËùÒÔJava·¢Õ¹µ½ÏÖÔÚ£¬°´Ó¦ÓÃÀ´·ÖÖ÷Òª·ÖΪÈý´ó¿é£ºJ2SE,J2MEºÍJ2EE, ......

̸̸"Java¼Ü¹¹"

1. J2EEÊǹ淶£¬ÊÇÒ»ÖÖJSR±ê×¼£¬ÓÐÏêϸÎĵµ£¬²ûÊöJ2EEÌṩÄÄЩ¹¦ÄÜ£¬¿ÉÒÔÏÂÔØÕâÑùÎĵµ£¬µ±È»»¹ÓÐһЩ´úÂë½Ó¿Ú£¬ÕâÊǵäÐÍJavaÊÀ½çÖеĿò¼Ü´úÂë+±ê×¼ÎĵµÐÎʽ£¬ÕâÊÇÖ»ÓÐ×ÔÓÉÊÀ½ç²ÅÓеĹ淶£¬ÔÚ΢ÈíMSÊÀ½çÄãÊǾø¶Ô²»»á¿´µ½µÄ£¬ËùÒÔ£¬´Ó΢Èíת¹ýÀ´µÄ£¬»áÔΣ¬»á²»ÊÊÓ¦£¬²»ÄÜÔÙ°´ÕÕËûÃÇÒÔǰµÄ¾­ÑéÀ´¿´´ý×ÔÓɵÄÐÂÊÀ½ç¡£
2.¼Ü¹¹ÊǾ ......

JAVA¿ª·¢Õß×ȥµÄ20¸öÓ¢ÎÄÍøÕ¾

1.[http://www.javaalmanac.com] – Java¿ª·¢ÕßÄê¼øÒ»ÊéµÄÔÚÏß°æ±¾. ÒªÏë¿ìËٲ鵽ijÖÖJava¼¼ÇɵÄÓ÷¨¼°Ê¾Àý´úÂë, ÕâÊÇÒ»¸ö²»´íµÄÈ¥´¦.
2.[http://www.onjava.com] – O’ReillyµÄJavaÍøÕ¾. ÿÖܶ¼ÓÐÐÂÎÄÕÂ.
3.[http://java.sun.com] – ¹Ù·½µÄJava¿ª·¢ÕßÍøÕ¾ – ÿÖܶ¼ÓÐÐÂÎÄÕ·¢±í.
4.[http:/ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ