MailBox 类
public class MailBox {
ArrayList<TwootMessage> messages = new ArrayList<TwootMessage>();
public void addMessage(TwootMessage message){
if(messages.size() < 100){
messages.add(message);
Collections.sort(messages);
}
else{
System.out.println("The Mailbox is full, cant add more messages, sorry!");
}
}
public void deleteMessage(int messageIndex){
messages.remove(messageIndex);
}
public TwootMessage getFirstMessage(){
return messages.get(0);
}
}
这是我的代码。我试图能够从这个类中创建两种类型的邮箱,只接受TextTwoot和一个接受所有内容的邮箱。 TwoootMessage是textTwoot和其他类型的两个类的超类。 有人可以提供一些帮助吗? 谢谢
答案 0 :(得分:1)
使该类具有通用性:
public class MailBox<T> {
List<T> messages = new ArrayList<T>();
public void addMesssage(T message) {
//implementation goes here.
}
public T getFirstMessage() {
return messages.get(0);
}
}
这将允许您创建如下对象:
MailBox<TwoootMessage> twootMessageMailbox = new MailBox<TwoootMessage>();
MailBox<Object> mailBoxForEverything = new MailBox<Object>();