如何解决Java 中的模式边界控制实体
我有一个特别的问题,我似乎无法摆脱它。
我利用了 BCE 模式,在实体中我有母类 Contact 和子类 ContactCompany 和 ContactPrivate。父类(Contact)实现方法
public abstract void print();
而 ContactCompany 类实现:
public void print() {
System.out.format("Company Contacts: %s,name: %s,surname: %s",this.getName(),this.getSurname(),this.getEmail());
}
ContactPrivate 类实现:
public void print() {
System.out.format("Private Contact: %s,name: %s",this.name(),this.birthday());
}
在控件中,我有以下打印联系人的方法:
public void printContacts(boolean numbered) {
System.out.println("List:");
Contact[] contactList = getContactList();
for (int i = 0; i < contactList.length; i++) {
System.out.print("\t"
+ "\n");
if (numbered) {
System.out.format("%d) ",i);
}
contactList[i].print();
}
System.out.flush();
}
在边界中,我只是从控件中调用该方法并将其发送到打印。
错误是实体中不能有prints方法,因为模式不允许。我该如何解决?如何在不将打印内容放入实体的情况下打印所有内容?
谢谢!
阿尔贝托
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。