码迷,mamicode.com
首页 > 编程语言 > 详细

Java基础笔记14

时间:2017-07-12 15:27:23      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:有一个   getname   generic   构造   dem   win   demo   ons   属性   

1.反射.
Class:反射类 任何一个类都有一个Class反射类.(影子)
java.lang.reflect.*;
Field:字段类
Method:方法类类
Constructor:构造方法类.

2.获取反射类
//1.获取反射类 类名.class
Class clazz1=People.class;
//2.通过全类名
Class clazz2=Class.forName("demo.People");
//3.对象获取
People p=new People();
Class clazz3=p.getClass();
3.通过反射类实例化对应的类对象.
clazz.newInstance();

4.通过反射类获取类中的属性.
//获取父类或自己本类中public修饰的属性
Field ageField= clazz1.getField("age");
ageField.set(p, 156);
//只获取本类中自己声明的属性
Field nameField=clazz1.getDeclaredField("name");
nameField.setAccessible(true);//允许赋值
nameField.set(p, "张三");
System.out.println(p);
5.获取某个类的全部方法
Method showMethod= clazz1.getMethod("print",int.class);
//调用该方法
showMethod.invoke(p,15);

Method[] ms=clazz1.getDeclaredMethods();
for(Method m:ms){
System.out.println(Modifier.toString(m.getModifiers())+" "
+m.getReturnType().getName()+" "+m.getName()+"("+Arrays.asList(m.getGenericParameterTypes())+")");
}











Java基础笔记14

标签:有一个   getname   generic   构造   dem   win   demo   ons   属性   

原文地址:http://www.cnblogs.com/qq634571685/p/6844929.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!