Treflection02_getMethods()_getMethod()
1、
package reflectionZ; import java.lang.reflect.Constructor;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List; public class Treflection02
{
public static void main(String[] args) throws Exception
{
// 第15课
// getMethods()、getMethod() Class<?> clazz1 = Class.forName("reflectionZ.Cat"); // 通过Class对象来得到构造函数
Constructor<?> c2 = clazz1.getConstructor(String[].class);
String[] foods = {"鱼", "老鼠"};
//Cat cat2 = (Cat)c2.newInstance((Object)foods); // 强转
//cat2.Show(); Object obj = c2.newInstance((Object)foods);
/*
// 使用反射来调用 Show()
// 获取 Show()方法
// (1)、无参数
Method method = clazz1.getMethod("Show");
method.invoke(obj);
//*/
/*
// (2)、无参数
Method method = clazz1.getMethod("Show", null);
method.invoke(obj, null);
//*/
/*
// (3)、一个String参数
Method method = clazz1.getMethod("Show", Class.forName("java.lang.String"));
method.invoke(obj, "AA");
//*/
/*
// (4)、两个参数: String + int
Method method = clazz1.getMethod("Show", Class.forName("java.lang.String"));
method.invoke(obj, "BB", 2);
//*/
/*
// (5)、一个 List类型的参数
Method method = clazz1.getMethod("Show", List.class);
List list = new ArrayList();
list.add("A01");
list.add("A02");
list.add("A03");
method.invoke(obj, list);
//*/
//*
// (6)、一个参数: int
// 调用私有的函数
Method method = clazz1.getDeclaredMethod("Show", int.class);
method.setAccessible(true); // 暴力访问
method.invoke(obj, 5);
//*/
}
}
2、
Treflection02_getMethods()_getMethod()的更多相关文章
随机推荐
- 【MarkDown】使用Html样式和折叠语法
MarkDown很方便,但基本语法有些不足:比如无法使用折叠语法,无法让文字有不同的颜色. 这些功能可以实现,不过需要使用Html语法进行扩展.这篇文章主要是整理一下这些技巧,方便更好的使用. 一.折 ...
- express, mocha, supertest,istanbul
引子 有群友问到Express怎么做 单元测试/覆盖率测试,这是上篇所遗漏的,特此补上 Express Web测试 做 Express Web 测试首先要面对的问题是在哪端进行测试: 客户端的请求响应 ...
- a标签的href和onclick
1.链接的onclick事件被先执行,href的事件后执行 2.就今天遇到的问题说一下,通过a标签的onclick事件实现点击后定位到指定的div,或者是执行其他函数(比如弹出artdialog等), ...
- CCCallFunc, CCCallFuncN, CCCallFuncND 三者的区别
今天学习过程中,自己敲了一个例子,结果在执行Action的时候出现了错误.经排查发现是CCCallFunc使用的问题,应该使用CCCallFuncN,然后搜了下他们的区别,才知道,是因为有一个参数的问 ...
- QSS类的用法及基本语法介绍
QSS类的用法及基本语法介绍 目录 1. 何为Qt样式表2. 样式表语法基础3. 方箱模型4. 前景与背景5. 创建可缩放样式6. 控制大小7. 处理伪状态8. 使用子部件定义微观样式8.1. 相对定 ...
- java 集合类复习(未完结)
JAVA常用数据结构及原理分析(面试总结) https://blog.csdn.net/qq_29631809/article/details/72599708 java 中几种常用数据结构 ht ...
- mysql乐观锁总结和实践(转)
原文:mysql乐观锁总结和实践 上一篇文章<MySQL悲观锁总结和实践>谈到了MySQL悲观锁,但是悲观锁并不是适用于任何场景,它也有它存在的一些不足,因为悲观锁大多数情况下依靠数据库的 ...
- Python(数据库之数据类型)
一.创建表的完整语法 #[]内的可有可无,即创建表时字段名和类型是必须填写的,宽度与约束条件是可选择填写的. create table 表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[ ...
- 【我的Android进阶之旅】如何在浏览器上使用Octotree插件树形地展示Github项目代码?
前言 最近有个同事看到我打开Github项目时,浏览器上的展示效果是树形的,于是他问我这个是什么浏览器插件,我告诉他是Octotree插件.现在我就来介绍介绍这款Octotree插件. 效果对比 1. ...
- exp导出一个表中符合查询条件的数据
原文地址:exp导出一个表中符合查询条件的数据 作者:charsi 导出一个表中的部分数据,使用QUERY参数,如下导出select * from test where object_id>50 ...