javaÖеĶ¯Ì¬´úÀí
JavaÔÚJDK1.3Ö®ºó¼ÓÈëÁË¿ÉÐÖú¿ª·¢¶¯Ì¬´úÀí¹¦ÄܵÄAPI.ʹÓö¯Ì¬´úÀí£¬¿ÉÒÔʹһ¸ö´¦ÀíÕߣ¨´úÀí£©·þÎñÓÚ¸÷¸ö¶ÔÏó¡£´´½¨Ò»¸ö¶¯Ì¬´úÀíÀàÖ»ÐèʵÏÖjava.lang.reflect.InvocationHandler½Ó¿Ú¡£
ÏÂÃæ´´½¨Ò»¸ö´¦ÀíÈÕÖ¾µÄ¶¯Ì¬´úÀíÀàLogHandlerÈ¥´úÀíHelloSpeakerÀà
Ê×ÏÈ´´½¨HelloSpeakerµÄ½Ó¿Ú
package com.test;
public interface IHello {
public void sayHello(String name);
}
È»ºó´´½¨HelloSeaker
package com.test;
public class HelloSpeaker implements IHello {
public void sayHello(String name) {
System.out.println("hello:"+name);
}
}
×îºó´´½¨LogHandlerÀà
package com.test;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
import java.util.logging.Logger;
public class LogHandler implements InvocationHandler {
private Logger logger = Logger.getLogger(this.getClass().getName());
private Object delegate;
public Object bind(Object delegate) {
this.delegate = delegate;
return Proxy.newProxyInstance(delegate.getClass().getClassLoader(),
delegate.getClass().getInterfaces(), this);
}
public Object invoke(Object proxy, Method method, Object[] args)
throws Throwable {
Object result = null;
try {
logger.info("method start..." + method);
result = method.invoke(delegate, args);
logger.info("method end..." + method);
} catch (Exception e) {
logger.info(e.getMessage());
}
return result;
}
}
ºÃÁË£¬ÏÖÔÚÎÒÃDZàдһ¸ö²âÊÔÀàDemo
package com.test;
public class Demo {
public Demo() {
// TODO Auto-generated constructor stub
}
/**
* @param args
*/
public static void main(String[] args) {
LogHandler logHandler = new LogHandler();
&
Ïà¹ØÎĵµ£º
ÓÉÓÚ¹«Ë¾ÒµÎñÔö³¤£¬ÏÖ¼±ÐèÕÐÆ¸·ûºÏÈçÏÂÌõ¼þJAVA¸ß¼¶Èí¼þ¹¤³Ìʦ Èô¸ÉÃû
1¡¢¾ßÓÐÁ¼ºÃµÄjava¼¼Êõ֪ʶºÍ¾Ñ飻
2¡¢¾ß±¸Á¼ºÃµÄ½â¾öÎÊÌâµÄÄÜÁ¦ÒÔ¼°³öÉ«µÄÍŶӺÏ×÷ÄÜÁ¦£»
3¡¢ÊìϤJ2EE¼Ü¹¹ºÍ¿ª·¢Ä£Ê½£¬ÊìϤMVCÉè¼ÆÄ£Ê½£»
4¡¢ÊìϤhibernate¡¢struts2¡¢spring£»
5¡¢Äܰ´Õչ淶µÄÈí¼þ¿ª·¢Á÷³Ì£¬Íê³ÉÈí¼þµÄÐèÇó¡¢Éè¼Æ¡¢±àÂëº ......
JavaµÄ×Ö·ûÀàÐͲÉÓõÄÊÇUTF-16±àÂ뷽ʽ¶ÔUnicode±àÂë±í½øÐбíʾ¡£ÆäÖÐÒ»¸öcharÀàÐ͹̶¨2Bytes£¨16bits£©¡£Ê×ÏÈÏȽéÉÜÒ»ÏÂUnicode±àÂë±íºÍUTF-16±àÂëËã·¨£º
Unicode±àÂë±íµÄרҵÊõÓ
´úÂëµã (code point): Ö¸ÔÚUnicode±àÂë±íÖÐÒ»¸ö×Ö·ûËù¶ÔÓ ......
ÔÚûÓкúõØÑÐÏ°ÃæÏò¶ÔÏóÉè¼ÆµÄÉè¼ÆÄ£Ê½Ö®Ç°£¬ÎÒ¶ÔJava½Ó¿ÚºÍJava³éÏóÀàµÄÈÏʶ»¹ÊǺÜÄ£ºý£¬ºÜ²»¿ÉÀí½â¡£
¸ÕѧJavaÓïÑÔʱ£¬¾ÍºÜÄÑÀí½âΪʲôҪÓнӿÚÕâ¸ö¸ÅÄËä˵ÊÇ¿ÉÒÔʵÏÖËùνµÄ¶à¼Ì³Ð£¬¿ÉÒ»¸öÖ»Óз½·¨Ãû£¬Ã»Óз½·¨ÌåµÄ¶«Î÷£¬ÎÒʵÏÖËüÓÖÓÐʲôÓÃÄØ£¿ÎÒ´ÓËüÄÇʲôҲµÃ²»µ½£¬³ýÁËһЩ·½·¨Ãû£¬ÎÒÖ±½ÓÔÚ¾ßÌåÀàÀï¼ÓÈëÕâЩ·½ ......
import java.io.*;
public class CheckVirusFile
{
int virusCount=0,del_count=0,spe_count=0,nameCount=0;
//ÓõݹéµÄ·½·¨¼ì²éFileÀàÐ͵IJÎÊýÊÇÎļþ»¹ÊÇĿ¼
public void judgeDir(File virFile)
{
if(!virFile.isDir ......
ÔÚ Java ÀíÂÛºÍʵ¼ù µÄ ǰһÆÚÎÄÕ ÖУ¬Java™ Çå½à¹¤³Ìʦ Brian Goetz ̽¾¿ÁËÈõÒýÓã¨weak references£©£¬ËüÈÃÄú¾¯¸æÀ¬»øÊÕ¼¯Æ÷£¬ÄúÏëҪά»¤Ò»¸ö¶ÔÏóµÄÒýÓ㬶ø²»»á×èÖ¹¸Ã¶ÔÏó±»À¬»øÊÕ¼¯¡£ÔÚ±¾ÆÚÎÄÕÂÖУ¬Ëû½«½âÊÍ Reference ¶ÔÏóµÄÁíÍâÒ»ÖÖÐÎʽ£¬¼´ÈíÒýÓã¨soft references£©£¬ÓÃÓÚ°ïÖúÀ¬»øÊÕ¼¯Æ÷¹ÜÀíÄÚ´æÊ¹ÓúÍÏû³ýÇ ......