我必须使用public void contactMerchant方法(字符串用途,字符串文本)对接口I_Contactable进行编码,在其中我可以向商家发送电子邮件。但是,如果商人还没有电子邮件地址,则该消息应通过传真号码发送。
将有一个“商户”类,其中应包含所有必需的属性,例如emailadress和Faxnumber。
这只是发送电子邮件的模拟,这意味着电子邮件应仅作为输出显示在控制台中。
我才刚刚开始学习,所以代码应该是基本的方式。
我将不胜感激。
答案 0 :(得分:1)
假设您希望IContactable
接口是通用且可重用的,则应该只有一个简单的void contact(String purpose, String text)
方法(请注意,该方法的名称中没有“商人”)。
然后在类 implementing 的接口中,我们将其称为MerchantContactService
,您可以使用类似以下的东西:
@Override
void contact(String purpose, String text) {
if (this.merchant.hasEmailAddress()) {
sendEmail(purpose, text, this.merchant.getEmail());
} else {
sendFax(purpose, text, this.merchant.getFaxNumber();
}
}
假设您在MerchantContactService
类中有一个商人字段,并且商人具有必要的方法和获取器。现在,此类是接口的具体实现,并且可以是特定于商家的。
编辑:sendEmail()
和sendFax()
后面的代码由您决定,因为这不是问题的一部分。