类抽象类能否具有作为Java接口的属性?

时间:2019-06-28 18:03:16

标签: java interface abstract

我正在使用Java上的DAO模式,对于该实现,我使用DAO接口,该接口由“ ItemDAO”抽象类巫婆实现,然后导致诸如“ ItemDAOTxt”和“ ItemDAOXml”的类。同样的逻辑也用于“ OrderDAO”和“ EmployeesDAO”等类;我正在研究一个抽象类,该抽象类将以特定方式“ ClassA”使用DAO。因此,有一种方法可以使某些不同的类扩展“ ClassA”可以使用我想要的任何DAO的方式?

public abstract class ClassA
{
    private DAO<T> dao;
    //...
}

1 个答案:

答案 0 :(得分:0)

也许是这样

interface Foo<T> {
    T getValue();
}
abstract class Bar<T,U> implements Foo<T> {
    Bar(T t,U u) {
        this.t=t;
        this.u=u;
    }
    @Override public T getValue() {
        return t;
    }
    T t;
    U u;
}
class Baz<T,U>extends Bar<T,U> {
    Baz(T t,U u) {
        super(t,u);
    }
}
public class So56811426 {
    public static void main(String[] args) {
        Baz<Integer,Character> baz=new Baz<Integer,Character>(42,'x');
        System.out.println(baz.getValue()+" "+baz.u);
    }
}