我不确定如何调用另一个类的抽象类中的setter方法。这是我所拥有的:

public abstract class Media {
private String loanedTo;
    public String getLoanedTo() {
        return loanedTo;
    }
    public void setLoanedTo(String loanedTo) {
        this.loanedTo = loanedTo;
    }
    private Date dueOn;
    public Date getDueOn() {
        return dueOn;
    }
    public void setDueOn(Date dueOn) {
        this.dueOn = dueOn;
    }
}

public class Library {
public void loan(Loanable item, String name){
        Calendar calcDueDate = Calendar.getInstance();
        calcDueDate.add(Calendar.DAY_OF_MONTH, item.getDaysToLoan());
        dueOn = calcDueDate.getTime();
        loanedTo = name;
    }
}


如何设置不扩展无法实例化的Media的Library中的Dueton和loanedTo变量?搜索时找不到答案。刚开始学习这些东西。

最佳答案

如果尝试实例化抽象Media类,则会失败(因为您无法实例化抽象类)。

如果您有一个具体的类,例如说Book,并且有它extends Media,则可以调用book.setLoanedTo("Bob")book.setDueOn(someJavaDate)

关于java - 二传手与抽象类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22209596/

10-13 03:30