通过反射机制获取所有方法(method)

  import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier; /*
java.lang.Method
*/
public class ReflectTest09 {
public static void main(String[] args) throws ClassNotFoundException { //创建class对象
Class c=Class.forName("java.lang.String"); // com.shige.Reflect.CustomerService //创建字符串缓存区
StringBuffer stringBuffer=new StringBuffer(); //创建属性对象
Field[] fields=c.getDeclaredFields(); //获取每个属性的各个部分 stringBuffer.append(" " + Modifier.toString(c.getModifiers())+" class " +c.getSimpleName()+"{\n"); stringBuffer.append("// 属性部分\n");
for (Field field:fields) {
stringBuffer.append(" " + Modifier.toString(field.getModifiers())+" "+field.getType().getSimpleName()+" "+field.getName()+";\n"); } //获取方法对象
Method[] methods=c.getDeclaredMethods(); //获取方法得各个部分
stringBuffer.append("// 方法部分\n");
for (Method method:methods ) {
stringBuffer.append("\t");
stringBuffer.append(Modifier.toString(method.getModifiers())+" ");
stringBuffer.append(method.getReturnType().getSimpleName()+" ");
stringBuffer.append(method.getName()+"("); //获取形参
Class[] parametterTypes= method.getParameterTypes();
for (int i=0;i<parametterTypes.length;i++) {
Class parametterType=parametterTypes[i]; //判断是否为最后一个形参,如果不是就不再最后加逗号,是得话就加一个逗号。
if(i!=parametterTypes.length-1){
stringBuffer.append(parametterType.getSimpleName()+",");
}else{ stringBuffer.append(parametterType.getSimpleName());
}
} stringBuffer.append("){}\n");
} //输出
System.out.println(stringBuffer); }
}

Day15_86_通过反射机制获取所有方法(method)的更多相关文章

  1. java反射机制获取自定义注解值和方法

    由于工作需求要应用到java反射机制,就做了一下功能demo想到这些就做了一下记录 这个demo目的是实现动态获取到定时器的方法好注解名称,废话不多说了直接上源码 1.首先需要自定义注解类 /** * ...

  2. Day15_87_通过反射机制获取某个特定的方法

    通过反射机制获取某个特定的方法 反射是通过 方法名+形参列表来区分各个方法的(形参列表要用class类型.加.class) 示例代码 import java.lang.reflect.Method; ...

  3. kettle job如何利用java的反射机制获取执行的sql语句

    kettle job中的JavaScript如何获取同一个job中SQL步骤的执行语句并让执行语句记录在日志中呢?首先写日志需要用到job中JavaScript写日志的方法,其次是利用java反射机制 ...

  4. java 中利用反射机制获取和设置实体类的属性值

    摘要: 在java编程中,我们经常不知道传入自己方法中的实体类中到底有哪些方法,或者,我们需要根据用户传入的不同的属性来给对象设置不同的属性值,那么,java自带的反射机制可以很方便的达到这种目的,同 ...

  5. Day14_81_反射机制获取Class属性

    反射机制获取Class属性 获取属性 方法一: Class对象 . getFields();只能用来获取公开的属性,不能获取有私有的或者受保护的属性 获取属性 方法二: Class对象 . getDe ...

  6. android 利用反射机制获取drawable中所有的图片资源

    public List<Map<String,Object>> getGridData() { list=new ArrayList<Map<String,Obje ...

  7. Day16_91_通过反射机制获取父类和父接口

    通过反射机制获取父类和父接口 * 代码: import java.net.InterfaceAddress; public class ReflectTest14 { public static vo ...

  8. Day16_90_通过反射机制获取某个特定的构造方法

    通过反射机制获取某个特定的构造方法 public class ReflectTest13 { public static void main(String[] args) throws ClassNo ...

  9. Day16_89_通过反射机制获取所有构造方法

    通过反射机制获取某个特定的构造方法 * 代码 import java.lang.reflect.Constructor; import java.lang.reflect.Modifier; publ ...

随机推荐

  1. 手把手教你Spring Boot整合Mybatis Plus 代码生成器

    一.在pom.xml中添加所需依赖 <!-- MyBatis-Plus代码生成器--> <dependency> <groupId>com.baomidou< ...

  2. Vue学习笔记-vue-element-admin 前端学习

    一  使用环境 开发系统: windows 后端IDE: PyCharm 前端IDE: VSCode 数据库: msyql,navicat 编程语言: python3.7  (Windows x86- ...

  3. 微信小程序:利用map方法方便获得对象数组中的特定属性值们

  4. iframe 调用父页面元素

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="IFrame.aspx.cs ...

  5. .NET测试--模拟框架NSubstitute

    .NET测试--模拟框架NSubstitute .NET测试 NSubstitute在GitHub的开源地址:https://github.com/nsubstitute/nsubstitute/do ...

  6. 更换 grub 主题

    默认的 grub 界面比较简陋 然后突然有想法了,想换个主题 具体操作 1.下载 grub 主题包 去这个地址下载主题(应该是这个地址): https://www.gnome-look.org/bro ...

  7. C++的标识符的作用域与可见性

    下面是关于C++的标识符的作用域与可见性学习记录,仅供参考 标识符的作用域与可见性 作用域是一个标识符在程序正文中有效的区域. 作用域分类 ①函数原型作用域 ②局部作用域(快作用域) ③类作用域 ④文 ...

  8. Java 常见对象 03

    常见对象·StringBuffer类 StringBuffer类概述 * A:StringBuffer类概述 * 通过 JDk 提供的API,查看StringBuffer类的说明 * 线程安全的可变字 ...

  9. 深入浅出新一代跨平台抓包&调式利器Fiddler Everywhere

    什么是Fiddler Everywhere? Fiddler Everywhere is a web debugging proxy for macOS, Windows, and Linux. Ca ...

  10. bjd_ctf

    1.抓包修改 ​ 提示修改id,postman修改headers里面的id 分析得到id是admin加admin的base64编码,payload为id: adminYWRtaW4= 请求后又提示请使 ...