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

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

Cedar
难度入门
时长 1小时20分
  • foo类的对象是foo1,foo类的类类型是Class的对象
    查看全部
    0 采集 收起 来源:Class类的使用

    2017-02-14

  • 类类型
    查看全部
    0 采集 收起 来源:Class类的使用

    2017-02-14

  • Class类
    查看全部
  • 类也是实例对象,是java.lang.Class类的实例对象可以用三种方式表示: 1、Class c1=类.class; 2、Class c2=类的实例对象.getClass(); 3、Class c3=null; c3=Class.forName("类所属的包.类名"); 第三种方法需要先实例化一个变量,然后通过Class.forName("")赋值,但需try,catch处理, c1和c2、c3都代表了类的类类型,一个类只可能是Class类的一个实例对象。 我们称类这个实例对象是这个类的类类型。 可以通过类的类类型创建该类的实例对象,该实例对象需要需无参构造方法。 例:Foo(类) foo(类的实例对象)=(Foo需强制转换类型,一般为接口,便于转换)c1.newInstance();
    查看全部
    0 采集 收起 来源:Class类的使用

    2018-03-22

  • 打印对象的构造函数信息:构造函数也是对象java.lang.Constructor中封装了构造函数的信息。 getConstructor获取所有public的构造函数。 例;Constructor[] cs=c.getConstructors(); getDeclaredConstructors得到所有的构造函数。 例:Constructor[] cs=c.getDeclaredConstructors();
    查看全部
  • 获取成员变量信息: 成员变量也是对象,是java.lang.reflect.Filed包下,Field类关于成员变量的操作。 getFields()方法获取所有关于public的成员变量的信息 例:Field[] fs=c.getFields(); getDeclaredFields()方法获取的是所有该类自己声明的方法的成员变量信息。 例:Filed[] fs=c.getDeclaredFields();
    查看全部
  • 打印类的信息,包括类的成员函数,成员变量的方法: 1、要获取类的信息,首先要获取类的类类型 例:Class c=obj.getClass(); 注:传递的是哪个子类的对象,c就是该子类的类类型 2、获取类的名称 例:System.out.println(“类的名称是”+c.getName()); Method类,方法对象 一个成员方法就是一个method对象 getMethods()方法获取的是所有的public的函数,包括父类继承来的 getDeclaredMethods()获取的是所有该类自己声明的方法,不问访问权限。 例:Method[] ms=c.getMethods;c.getDeclaredMethods(); for(int i=0;i<ms.length;i++){ //得到方法的返回值类型 Class returnType=ms[i].getReturnType(); System.out.println(returnType.getName()+""); //得到方法的名字 System.out.print(ms[i].getName()+"("); //获取参数类型--》得到的是参数列表类型的类类型 }
    查看全部
  • 4、基本的数据类型:void关键字,都存在类类型(直接用 类型.class 例:int.class,void.class;都可以表示出来)。
    查看全部
  • Class.forName(“类的全称”) 1、不仅表示了类的类类型,还代表了动态加载类。 2、注意区分编译和运行。 3、编译时刻加载类是静态加载类,运行时刻加载类是动态加载类。 new创建对象是静态加载类,在编译时刻就需要加载所有的可能使用到的类,通过动态加载类可以解决该问题。功能性的类一般使用动态加载类。
    查看全部
  • class类: 1、在面向对象的世界里,万事万物皆对象。但是其中普通数据类型和静态的成员不是面向对象的。普通数据类型他用包装类或封装类来弥补,静态成员不是属于某个对象,而是属于类。 类是对象,类是Java.lang.Class类的实例对象,这个对象我们称为该类的类类型。任何一个类都是Class的实例对象,这个实例对象有三种表达方式: 第一种 Class c1=Foo.class;实际上告诉我们任何一个类都有一个隐含的静态成员变量class。 第二种 Class c2=foo1.getClass();已知该类的对象通过getClass方法得到。 通过System.out.println(c1==c2);可知不管c1或c2都代表了Foo类的类类型,一个类只可能是Class类的一个实例对象。 第三种:c3=Class.forName("包名+类名");
    查看全部
    0 采集 收起 来源:Class类的使用

    2018-03-22

  • 1.class类 java.lang.class
    查看全部
    0 采集 收起 来源:Class类的使用

    2017-02-08

  • 在类里面的使用的关键字也是会有类类型的
    查看全部
  • 通过 Class.forName("类全称") 与 interface(接口) 可以实现动态加载类。 *功能性的类尽量使用动态加载
    查看全部
  • 三种获得类类型对象的引用的方式(每个类都只有一个该类类型的对象); 通过类类型对象可以创建该类的实列(但该类必须是要无参数的构造方法)
    查看全部
    0 采集 收起 来源:Class类的使用

    2017-02-07

  • double.class和Double.class不一样
    查看全部

举报

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

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