使用继承java找不到反射的getDeclaredFields

时间:2017-02-06 00:48:15

标签: java reflection annotations metadata

我告诉你我能够自动获取和没有继承的高点,但现在我有同样的问题需要编辑,它发生了 我想首先编辑超类的方法,然后编辑超类 但我没有成功:

ParamBuilder.java

private LinkedList<Object>loadMethods(IPersistente ip) throws Exception{
        LinkedList<Method> m = new LinkedList();        
        Child s = ip.getClass().getAnnotation(Child.class);
        Method[] me = null; 
        if(s != null && ip.getId() == 0){
            me = ip.getClass().getSuperclass().getDeclaredMethods();
        } else {
            // only this if is left so that the modifications with inheritances are automated, xq with the highs I could
            if(s != null){
                me = ip.getClass().getSuperclass().getDeclaredMethods();
            } else {
                me = ip.getClass().getDeclaredMethods();
            }     
        }
        for(Method campo : me){            
            if (campo.getName().startsWith("get") && !campo.getName().startsWith("getClass")) {
                Method metodo = campo;
                if(metodo.getParameterCount() == 0) {
                    if(metodo.isAnnotationPresent(Sort.class)){
                        m.add(metodo); 
                    }
                }
            }            
        }
        if(ip instanceof IDependiente && !ip.check()){
            Collections.sort(m, new SortDesc());
        } else {
            Collections.sort(m, new SortAsc());
        }        
        return load(ip, m);
    } 

我等待你的回复和问候。

0 个答案:

没有答案