-
1,调用参数个数可变的方法:<br> 1.1print(p1,new Object[]{10,20});// 在一个数组中传入参数<br> 1.2print(p1,10,20);// 一个一个传参数,有几个传几个 1.3print(p1);// 没有参数就不传 2,通过反射调用方法 获得方法对象,用方法对象操作类的实例对象查看全部
-
1,反射的应用: 通过反射机制得到类的相关信息 1.1得到相关信息的步骤: 1)得到类的类型obj.getClass()---------关键!! 2)通过调用java.lang.Class的方法得到类的相关信息 1.2类的相关信息包括: 类的方法信息(方法有参数Parameter);类的成员变量信息;类的构造函数信息(推荐使用c.getDeclaredConstructor())查看全部
-
Object类中有的一些方法: hashCode() equals() toString() getClass() -------- wait() notify()查看全部
-
1,类可以静态加载/动态加载<br> 2,创建类的实例对象的方法 1)new创建对象:是静态加载类(在编译时期加载类),在编译时刻就需要加载所有可能用到的类 Foo f=new Foo(); 2)通过类的类类型进行创建:Class c1=Class.forName("类的全路径"):是类的动态加载,在运行时加载类 Foo f=(Foo)c1.newInstance();查看全部
-
111查看全部
-
1,万事万物皆对象<br> 2,获取类类型的方法 class Foo{}<br> Foo f1=new Foo();// Foo类的实例对象<br> Foo是Class类的实例对象,Class是Foo的类类型,一个类只可能是Class类的一个实例对象<br> // 1)Class c1=Foo.class;// 得到Foo类的类类型<br> // 2)Class c2=f1.getClass();// 得到Foo的类类型<br> // c1=c2<br> // 3)<br> Class c3=null;<br> c3=Class.forName("com.imooc.reflect.Foo");// 类的完整路径 3,创建类的实例对象的方法 1)Foo fo=new Foo(); 2)Class c1=Foo.class; Foo fo=(Foo)c1.newInstance();// 通过类的类类型创建类的实例对象查看全部
-
呵呵哒查看全部
-
Class c1=类名.class; Class c2=实例.getClass(); Class c3=Class.forName("完整包路径");查看全部
-
对于有返回值的反射调用方法,要用多态转型,getMethod()方法是为了获取某个方法对象,它的传入参数是被调用方法参数列表的类类型查看全部
-
需要知道方法名称,以及参数列表的类类型查看全部
-
java集合泛型是在编译阶段防止错误输入的,编译后会去掉泛型查看全部
-
动态加载可实现无须重新编译,只要添加新的接口实现类,即可完成升级。例如游戏的升级查看全部
-
1.在编译之后集合是去泛型化的 2.Java中集合的泛型是防止错误输入的只在编译是有效,绕过编译就无效了查看全部
-
执行以上操作,最大一个前提就是获取一个类的类类型,其实获取构造方法也好,属性也好,方法也好,有些方法操作都是相似的,构造方法,方法体的参数要以类类型的数组返回查看全部
-
反射的操作是编译之后的 .getclass查看全部
举报
0/150
提交
取消