JAVA 使用反射获得继承类

来源:互联网 发布:淘宝客服kpi考核内容 编辑:程序博客网 时间:2024/05/20 17:42

JAVA 使用反射获得继承类

一代码完成

  • 首先创建两个类,Parent.class与Children.class,Children类继承Parent类。

    package util;/** * Children类 * Created by OovEver on 2017/11/20. */public class Children extends Parent {    public static void main(String[] args) {        Children children = new Children();    }}
    package util;/** * Created by OovEver on 2017/11/20. * Parent类 */public class Parent {    protected Class clazz;    public Parent() {        try {            throw new Exception();        } catch (Exception e) {//            获得异常栈信息            StackTraceElement stes[]= e.getStackTrace();//            获得继承的子类名称,stes[0].getClassName为父类名称//            如果想要获取继承children的类,即当前类的“孙子”类,则调用stes[2].getClassName,依此类推            String serviceImpleClassName=   stes[1].getClassName();            try {//               通过反射获取类名                Class  serviceImplClazz= Class.forName(serviceImpleClassName);                String serviceImpleClassSimpleName = serviceImplClazz.getSimpleName();                System.out.println(serviceImpleClassSimpleName);//                获取该类所在的包名                String pojoPackageName = serviceImplClazz.getPackage().getName();//                获得该类的完整路径                String pojoFullName = pojoPackageName +"."+ serviceImpleClassSimpleName;                clazz=Class.forName(pojoFullName);                System.out.println(clazz);            } catch (ClassNotFoundException e1) {                e1.printStackTrace();            }        }    }}

    二 应用

    代码重构:在实际项目开发中,有许多公共的业务逻辑,如数据库常见的CURD操作,可以将其抽取出来,放到一个公共的父类处,让子类去继承这个父类,根据继承的子类不同,从而为不同的子类提供CURD操作。这样的实现方式,正是JAVA用委托实现代码重构的基本思路。

附 :所有java工具相关的代码,已放到github上,除了此工具类,还有其他工具类,欢迎大家补充,github地址: https://github.com/oovever/javaUtil

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 拔倒刺手指肿了怎么办 多肉发芽徒长了怎么办 黄丽又大又肥怎么办 小叶紫檀盘坏了怎么办 多肉植物烂根怎么办 檀木手串开裂了怎么办 手串越来越黑了怎么办 绿萝叶子尖发黄怎么办 绿萝叶子发黄有黑斑怎么办 绿萝叶子尖干枯怎么办 养的花叶子干了怎么办 云株花叶子发黄怎么办 驱蚊草叶子发黄怎么办 多肉叶子有黑点怎么办 多肉植物干瘪了怎么办 多肉叶片有黑点怎么办 多肉叶片有黑斑怎么办 多肉表面有黑点怎么办 杉果游戏买了后怎么办 盆景叶子上的灰怎么办 福建茶盆景掉叶怎么办 被普通蜘蛛咬了怎么办 被小蜘蛛咬了怎么办 被一般蜘蛛咬了怎么办 联通4g流量超出怎么办 腿上的肥胖纹怎么办除 金属眼镜腿歪了怎么办 炸东西油往外溢怎么办 油反复使用起沫怎么办 炸东西的油黑了怎么办 板栗放久了干了怎么办 三四个月的宝宝拉肚子怎么办 四个月的孩子拉肚子怎么办 4个月孩子拉肚子怎么办 三阳的房子很热怎么办 买了缺角的房子怎么办 多肉摇钱树焉了怎么办 虎皮兰叶子烂了怎么办 三角龙骨烂根了怎么办 地板木龙骨会动怎么办 多肉植物开花后怎么办