为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
反射——Java高级开发必须懂的_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

反射——Java高级开发必须懂的

Cedar
难度入门
时长 1小时20分
  • package com.imooc.reflect; import java.lang.reflect.Method; import java.util.ArrayList; public class MethodDemo4 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub ArrayList list = new ArrayList(); ArrayList<String> list1 = new ArrayList<
    查看全部
  • package com.imooc.reflect; import java.lang.reflect.Method; public class MethodDemo1 { public static void main(String[] args) { //要获取print(int,int)方法 //1、要获取一个方法就是获取类的信息,获取类的信息首先要获取类的类类型 A a1 = new A(); Class c = a1.getClass(); /** * 2、获取方法,名称和参数列表来决定 * getMethod获取的是Public的方法
    查看全部
  • package com.imooc.reflect; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method; public class ClassUtil { /** * 打印类的信息,包括类的成员函数,成员变量(只获取成员函数public) * @param obj 该对象所属类的信息 */ public static void printClassMessage(Object obj){ //获取类的信息 首先要获取类
    查看全部
  • 方法的反射操作 类名 实例名 = new 类名(); Class cls = 实例名.getClass(); Method m=cls.getMethod("方法名",new Class[]{基本数据类型.class[,基本数据类型.class...]}); Method m=cls.getMethod("方法名",基本数据类型.class[,基本数据类型.class...]); Object o=m.invoke(实例名,new Object[]{参数值[,参数值...]}); Object o=m.invoke(实例名,参数值[,参数值...]);
    查看全部
  • 成员变量也是对象(java.lang.reflect.Field) 获取所有 public 的成员变量信息 cls.getClass().getFields() 获取该类自己声明的成员变量信息 cls.getClass().getDeclaredFields() 构造方法类似
    查看全部
  • 获取基类的类类型 Class cls = 基类.class (int,String,double,void等) 获取基类的名称 cls.getName()(全称:java.lang.String) cls.getSimpleName() (简称:String) 获取所有的 public 的函数,包括继承父类而来的 类名.getClass().getMethods() 获取所有该类自己声明的方法,不论访问权限 getDeclaredMethods() getReturnType() 获取返回类型的类类型 getParameterTypes() 获取参数类型
    查看全部
  • Class.forName(“类的全称”) A、不仅表示了类的类类型,而且还是动态加载类 B、编译时刻加载类是静态加载类、运行时刻加载类是动态加载类
    查看全部
  • 类是对象,类是 java.lang.Class 类的实例对象 任何一个类都是 Class 的实例对象,这个实例对象有三种表示方式 A、任何一个类都有一个隐含的静态成员变量 class Class cls = 类名.class B、知道该类的对象通过 getClass 方法获取 Class cls = 实例名.getClass() C、通过类名加载 Class cls = Class.forName("包名.类名") 通过类的类类型创建类的对象实例(需要默认无参构造方法) 类名 实例名 = (类名)cls.newInstance()
    查看全部
    1 采集 收起 来源:Class类的使用

    2018-03-22

  • 测试一下
    查看全部
    0 采集 收起 来源:Class类的使用

    2014-10-23

  • 通过反射了解集合泛型的本质
    查看全部
  • 方法的反射操作 A a1 = new A(); Class c = a1.getClass(); Method m=c.getMethod("print",new Class[]{int.class,in.class}); Method m1=c.getMethod("print",String.class,String.class); Object o=m.invoke(a1,new Object[]{10,20}); Object o1=m.invoke(a1,10,20);
    查看全部
  • 泛型可以通过反射绕过编译检查
    查看全部
  • 构造方法 Constructor
    查看全部
  • 类也是对象
    查看全部
    0 采集 收起 来源:Class类的使用

    2014-10-18

  • Class的构造方法为私有的 只有java虚拟机创建Class实例对象
    查看全部
    0 采集 收起 来源:Class类的使用

    2014-10-18

举报

0/150
提交
取消
课程须知
童鞋们,学习本课程前需要熟悉Java面向对象的思想,并能掌握Java IO输入输出流、集合和泛型等知识。可参考慕课网Java入门的一、二、三季以及我的文件我做主——Java IO流课程。
老师告诉你能学到什么?
1、能够理解并应用反射机制。 2、能够了解反射机制在集合泛型中的应用。 3、有利于更好的学习框架等Java高级技术。
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!