A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 空。 中级黑马   /  2015-6-13 22:06  /  329 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

类:Class

        代表一类事物,Java程序中的哥哥Java类属于同一类事物,描述这类事物的Java
                类,就是Class

        getPackage()得到所属的包
        getName()的得到类的名字
        getMethods()得到自己所有的方法列表
        getInterfaces()得到自己实现的接口
       
        Person p1=new Person();

        Class cls1=Person.class;        Class的实例对象代表内存中的字节码
       
        获取字节码
        1:类名.class                对象的属性获得
        2:对象.getClass()        对象的静态forName方法
        3:Class.forName(类名)        反射经常用到

        九个预定义Class实例对象:
                包括八个基本数据类型:boolean,byte,char,short,int,long,float,double
                一个特殊的:void

        例:
                String str="abc";
                Class cls1=str.getClass();
                Class cls2=String.Class();
                Class cls3=Class.forName("java.lang.String");
        结果:
                cls1=cls2=cls3=true
        isPrimitive()是否是原始类型

        数组类型的Class实例对象:Class.isArray()

只要是,在源程序中出现的类型,都有各自的Class实例对象


Constructor类:代表某各类中的一个构造方法

        得到某各类所有的构造方法:
                Constructor [] constructor=Class.forName(类名).getConstructors();
        得到某一个构造方法:
                Constructor constructor=Class.forName(类名).geetConstructor(类名.class);




评分

参与人数 1黑马币 +10 收起 理由
sk0806 + 10 神马都是浮云

查看全部评分

4 个回复

倒序浏览
反射,,受教了,那个视频中的
回复 使用道具 举报
还没学到,先看看
回复 使用道具 举报
急急急急急急急急急
回复 使用道具 举报
反射为啥要加上“高新”这个前缀呢???
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马