java5注释
2011年06月01日
先写一个注释
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.lang.annotation.ElementType;;
//用于说明这个注释使用的地方
@Target(value={ElementType.METHOD})
//运行的时间使用
@Retention(RetentionPolicy.RUNTIME)
public @interface MethodAnno {
String param();
}
//使用类
import java.lang.reflect.Method;
public class MethodClass {
@MethodAnno(param="print")
public void print(String s){
System.out.println(s);
}
public static void main(String[] args) throws Exception{
Class c=Class.forName("com.SSHside.web.actions.MethodCla ss");
Object o=c.newInstance();
Method[] ms=c.getMethods();
for(Method m:ms){
//些方法中是否包含注释@MethodAnno
if(m.isAnnotationPresent(MethodAnno.class)){
MethodAnno ma=m.getAnnotation(MethodAnno.class);
m.invoke(o,ma.param());
}
}
}
}
//最后输入结果为print
2011年06月01日
先写一个注释
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.lang.annotation.ElementType;;
//用于说明这个注释使用的地方
@Target(value={ElementType.METHOD})
//运行的时间使用
@Retention(RetentionPolicy.RUNTIME)
public @interface MethodAnno {
String param();
}
//使用类
import java.lang.reflect.Method;
public class MethodClass {
@MethodAnno(param="print")
public void print(String s){
System.out.println(s);
}
public static void main(String[] args) throws Exception{
Class c=Class.forName("com.SSHside.web.actions.MethodCla ss");
Object o=c.newInstance();
Method[] ms=c.getMethods();
for(Method m:ms){
//些方法中是否包含注释@MethodAnno
if(m.isAnnotationPresent(MethodAnno.class)){
MethodAnno ma=m.getAnnotation(MethodAnno.class);
m.invoke(o,ma.param());
}
}
}
}
//最后输入结果为print