从超类属性中检索数据的通用方法

时间:2015-08-20 07:56:59

标签: java

我有一些实体扩展了一个具有Id属性的通用BaseEntity,我想做一个方法,我传递一个实体并检索该id,即

BaseEntity

public class Entidad extends BaseEntity {

    protected String name;

    protected String image;

    protected Set<ContactForm> contactForms = new HashSet<ContactForm>();

}

实体

List<Long> longlist;

longlist = retrieveIds(entidad.getContactForms);

[...]

public List<Long> retrieveIds(Set<BaseEntity> entidades){
        List<Long> lista = new ArrayList<Long>();

        for(BaseEntity entidad : entidades){
            lista.add(entidad.getId());
        }

        return lista;
    }

(ContactForm也从BaseEntity扩展) 我想做这样的事情:

var text = document.getElementById("clicked_id"); // func arg is in string format
var ele = document.getElementById("name");  // func arg is in string format

有可能吗?怎么样?

2 个答案:

答案 0 :(得分:1)

是。这是可能的。

只需在超类中创建一个方法,并在所有返回该类的id的子项中覆盖该方法。

答案 1 :(得分:0)

创建方法getId()以返回BaseEntity的Id

<强> BaseEntity

    public abstract class BaseEntity implements Serializable{
       private Long id;
       public Long getId() {
           return this.id;
       }
    }