获取实例

来源:互联网 发布:office for mac 安装 编辑:程序博客网 时间:2024/06/09 23:11

在开发中,我们经常需要不通过类名来直接访问或者获取类实例。

1.通过类全路径获取类实例,并调用其方法

    BaseFragment newFragment;    Class<BaseFragment> classStr = (Class<BaseFragment>) Class.forName(className);    Constructor constructor = classStr.getConstructor();    newFragment = (BaseFragment) constructor.newInstance();

2.通过类名获取类成员变量

try {    Class<?> buildInfo = Class.forName(Consts.PACKAGE_NAME + Consts.DOT +            Consts.ROUTER_BUILD_INFO);    Field allModules = buildInfo.getField(Consts.BUILD_INFO_FIELD);    String modules_name = (String) allModules.get(buildInfo);} catch (Exception e) {    e.printStackTrace();    return;}

0 0
原创粉丝点击