我有一个超类Appointment
,然后扩展到几种不同类型的约会。我需要制作一个不同类型约会的ArrayList,我认为这不会是一个大问题,因为它们共享一个共同的超类 - Appointment
。但是,当我尝试将其中一个子类Daily
添加到ArrayList<Appointment> book = new ArrayList<Appointment>()
时,它无法执行此操作。
我有:
ArrayList<Appointment> book = new ArrayList<Appointment>()
然后在程序中(我将描述的方式,日期,月份和年份放在它所放置的方法中):
book.add(new Daily(description, day, month, year));
我得到的建议是:类型ArrayList中的方法add(AppointmentBook.Appointment)不适用于参数(Daily)
答案 0 :(得分:2)
将您的代码从ArrayList<Appointment>
更改为ArrayList<? extends Appointment>