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()的更多相关文章

随机推荐

  1. CodeForces 666B World Tour(spfa+枚举)

    B. World Tour time limit per test 5 seconds memory limit per test 512 megabytes input standard input ...

  2. python之django直接执行sql语句

    python之django直接执行sql语句 sql = 'select * from stu' info = 模型类.objects.raw(sql)

  3. 《挑战程序设计竞赛》2.3 动态规划-优化递推 POJ1742 3046 3181

    POJ1742 http://poj.org/problem?id=1742 题意 有n种面额的硬币,面额个数分别为Ai.Ci,求最多能搭配出几种不超过m的金额? 思路 据说这是传说中的男人8题呢,对 ...

  4. 容灾 RPO RTO

    w https://en.wikipedia.org/wiki/Recovery_point_objective A recovery point objective, or “RPO”, is de ...

  5. 好难忘又伤心一个非常好的学习js群解散了

    不知道为什么看到web前端之天天向上这个群解散,好难过.应该可以说,这个群是我见过比较靠谱的群,大家都非常热情帮助.那些管理员管理的非常好,突然解散了.觉得好可惜,也不会因为你是菜鸟不让你加,感觉好可 ...

  6. Python列表切片详解([][:][::])

    Python切片是list的一项基本的功能,最近看到了一个程序,里面有这样一句类似的代码: a = list[::10] 1 不太明白两个冒号的意思就上网百度,发现大多数人写的博客中都没有提到这一个用 ...

  7. MySQL(多表的表记录的查询)

    一.外键约束 1.创建外键 --- 每一个班主任会对应多个学生 , 而每个学生只能对应一个班主任 ----主表 CREATE TABLE ClassCharger( id TINYINT PRIMAR ...

  8. Andrew Ng机器学习编程作业:Support Vector Machines

    作业: machine-learning-ex6 1. 支持向量机(Support Vector Machines) 在这节,我们将使用支持向量机来处理二维数据.通过实验将会帮助我们获得一个直观感受S ...

  9. python16_day16【Django_ORM、模板】

    一.ORM 1.MySQL配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'books', #你 ...

  10. Win10 IIS 安装.net 4.5

    更新Win10,原来的IIS站点访问不了,原因是因为IIS 没有.net 4.5,使用网上的aspnet_regiis.exe -i命令,一点都不靠谱,直接提示: C:\WINDOWS\system3 ...