这篇文章将为大家详细讲解有关java反射机制怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
介绍
在运行时判断任意一个对象所属的类; 在运行时构造任意一个类的对象;
3.
通过静态属性
Person person=( Person) cls.newInstance();
forName()
.
public Constructor[] getDeclaredConstructors b. public
Constructor getConstructor(Class... parameterTypes)
反射获取方法 b. getReturnType()
获取指定的方法(<span lang="EN-USSegoe" ui",sans-serif;color:#212529;background:="" white'="">"
a.
b.
父类和父接口getSuperclass()
b.
三.
import java.lang.reflect.Constructor;import java.lang.reflect.Method;public class ReflectTest { public static Car initByDefaultConst() throws Throwable { //①通过类装载器获取Car类对象 ClassLoader loader = Thread.currentThread().getContextClassLoader(); Class clazz = loader.loadClass("com.smart.reflect.Car"); //②获取类的默认构造器对象并通过它实例化Car Constructor cons = clazz.getDeclaredConstructor((Class[]) null); Car car = (Car) cons.newInstance(); //③通过反射方法设置属性 Method setBrand = clazz.getMethod("setBrand", String.class); setBrand.invoke(car, "红旗CA72"); Method setColor = clazz.getMethod("setColor", String.class); setColor.invoke(car, "黑色"); Method setMaxSpeed = clazz.getMethod("setMaxSpeed", int.class); setMaxSpeed.invoke(car, 200); return car; } public static void main(String[] args) throws Throwable { Car car = initByDefaultConst(); car.introduce(); }}
关于“java反射机制怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。