「java读取注释」java里的注释
今天给各位分享java读取注释的知识,其中也会对java里的注释进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、Java 注解的读取注解信息的方法
- 2、java 如何获取方法的注释
- 3、如何用java 程序获取方法上的注释
- 4、java获取当前类上的注解内容
- 5、java如何读取XML文件中的注释
- 6、用java正则表达式提取java程序中的注释
Java 注解的读取注解信息的方法
属于重点,在系统中用到注解权限时非常有用,可以精确控制权限的粒度
注意:要想使用反射去读取注解,必须将Retention的值选为Runtime Java代码import java.lang.annotation.Annotation;import java.lang.reflect.Method;//读取注解信息public class ReadAnnotationInfoTest { public static void main(String[] args) throws Exception { // 测试AnnotationTest类,得到此类的类对象 Class c = Class.forName(com.iwtxokhtd.annotation.AnnotationTest); // 获取该类所有声明的方法 Method[] methods = c.getDeclaredMethods(); // 声明注解集合 Annotation[] annotations; // 遍历所有的方法得到各方法上面的注解信息 for (Method method : methods) { // 获取每个方法上面所声明的所有注解信息 annotations = method.getDeclaredAnnotations(); // 再遍历所有的注解,打印其基本信息 System.out.println(method.getName()); for (Annotation an : annotations) { System.out.println(方法名为: + method.getName() + 其上面的注解为: + an.annotationType().getSimpleName()); Method[] meths = an.annotationType().getDeclaredMethods(); // 遍历每个注解的所有变量 for (Method meth : meths) { System.out.println(注解的变量名为: + meth.getName()); } } } }}
java 如何获取方法的注释
楼上2位,我就郁闷你们两了!
虽然我不知道调用什么方法来实现,但是最起码也知道问题的意思!
人家是要把注释的内容打印出来!
如何用java 程序获取方法上的注释
你说的应该是注解吧,注释本身就是一种说明性的作用,JAVA文件在被编译到CLASS文件后是不存在注释的,注解不一样,可以通过反射获取,但是JAVA文件被编译后,注解也不一定存在,这个取决于你所定义注解的生命周期。
java获取当前类上的注解内容
@Retention(RetentionPolicy.RUNTIME) // 注解会在class字节码文件中存在,在运行时可以通过反射获取到
@Target({ElementType.FIELD,ElementType.METHOD})//定义注解的作用目标**作用范围字段、枚举的常量/方法
@Documented//说明该注解将被包含在javadoc中
public @interface FieldMeta {
/**
* 是否为序列号
* @return
*/
boolean id() default false;
/**
* 字段名称
* @return
*/
String name() default "";
/**
* 是否可编辑
* @return
*/
boolean editable() default true;
/**
java如何读取XML文件中的注释
使用
文件流
找到
--
起始位置
--为终止位置,中间就是注释
或者把xml转为String然后用正则匹配把注释找出来
用java正则表达式提取java程序中的注释
正则的效率非常低,有很多不用正则的好方法:
一,示例 某java程序
比如说一个Test2.java,将其保存在C盘根目录下,代码内容如下
/**
* @author xxx
*
*/
public class Test2 {
/* main method */
public static void main(String[] args) {
//a
int a =5;
//b
int b =5;
//a+b
System.out.println(a+b);
}
}
二,提取注释程序,将所有注释放到一个List里面,最后打印输出:
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
public class Test {
private static final String javaFilePath = "C:/Test2.java";
public static void main(String[] args) throws IOException {
ListString comments = new ArrayListString();
BufferedReader bfr = new BufferedReader(new InputStreamReader(new FileInputStream(javaFilePath)));
String line=null;
while((line=bfr.readLine())!=null){
line = line.trim();
if(line.startsWith("//")){
comments.add(line);
}
else if(line.startsWith("/*")line.endsWith("*/")){
comments.add(line);
}else if(line.startsWith("/*")!line.endsWith("*/")){
StringBuffer multilineComment = new StringBuffer(line);
while((line=bfr.readLine())!=null){
line = line.trim();
multilineComment.append("\n").append(line);
if(line.endsWith("*/")){
comments.add(multilineComment.toString());
break;
}
}
}
}
bfr.close();
for(int i=0;icomments.size();i++){
System.out.println("第"+(i+1)+"处注释: ");
System.out.println(comments.get(i));
}
}
}
三,输出结果:
第1处注释:
/**
* @author xxx
*
*/
第2处注释:
/* main method */
第3处注释:
//a
第4处注释:
//b
第5处注释:
//a+b
关于java读取注释和java里的注释的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-26,除非注明,否则均为
原创文章,转载请注明出处。