Java 我可以将注释传递给扩展它的子类吗?

Java 我可以将注释传递给扩展它的子类吗?,java,inheritance,annotations,android-room,java-annotations,Java,Inheritance,Annotations,Android Room,Java Annotations,我是个懒惰的人。。。我只想用最简单的方法,现在我正在学习android room。这里可能回答为“”,但它似乎试图将注释传递给另一个注释,对吗?那么,我可以将注释传递给子类吗?例如,这是我的父类“Model”: @Entity public abstract class Model implements Parcelable{ @Nullable @PrimaryKey private Object id; public String toJSON(){

我是个懒惰的人。。。我只想用最简单的方法,现在我正在学习android room。这里可能回答为“”,但它似乎试图将注释传递给另一个注释,对吗?那么,我可以将注释传递给子类吗?例如,这是我的父类“Model”:

@Entity
public abstract class Model implements Parcelable{
    @Nullable
    @PrimaryKey
    private Object id;

    public String toJSON(){
        return new Gson().toJson(this);
    }

    public <T> T getId(Class<T>type) {
        if(type.equals(Integer.class)||type.equals(int.class)) {
            return (T) Integer.valueOf(new Double(Double.parseDouble(String.valueOf(id))).intValue());
        }
        else if(type.equals(Long.class)||type.equals(long.class)) {
            return (T) Long.valueOf(new Double(Double.parseDouble(String.valueOf(id))).longValue());
        }
        else if(type.equals(Double.class)||type.equals(double.class)) {
            return (T) Double.valueOf(id.toString());
        }else if(type.equals(UUID.class)){
            return (T) UUID.fromString(String.valueOf(id));
        }
        return type.cast(id);
    }

    public <T> void setId(T id) {
        this.id = id;
    }
}
因为我的数据访问对象无法检测我的“Movie”类,除非我添加了实体注释

@Dao
public interface FavMovieDAO {
    @Query("SELECT * FROM Movie WHERE id = :movieId")
    public Movie find (int movieId);
}

如果没有办法,我将把我的整个模型类声明为一个实体…:/。提前谢谢。

如果没有,我想您可能想退房
@Dao
public interface FavMovieDAO {
    @Query("SELECT * FROM Movie WHERE id = :movieId")
    public Movie find (int movieId);
}