那如何做到,把发送给 C 和 D,甚至
时间: 2024-09-28 18:14:06 浏览: 11
在软件设计中,如果需要将消息发送给不同的对象C和D,通常会利用面向对象编程中的多态性来实现这种灵活性。具体步骤如下:
1. **定义接口或抽象类**:首先创建一个公共接口或抽象类,比如`MessageReceiver`,定义一个接收消息的方法`receiveMessage()`。
```java
public interface MessageReceiver {
void receiveMessage(String message);
}
```
2. **实现接口或抽象类**:对象C和D分别实现这个接口或者继承相同的抽象类,并提供各自的实现方法。
```java
class ObjectC implements MessageReceiver {
@Override
public void receiveMessage(String message) {
// C 对象处理消息的方式
}
}
class ObjectD implements MessageReceiver {
@Override
public void receiveMessage(String message) {
// D 对象处理消息的方式
}
}
```
3. **发送消息**:在发送者代码中,持有`MessageReceiver`类型的引用,而不是特定类的实例,这样可以动态地指向C或D。
```java
MessageReceiver target;
// 初始化target为C或D的实例
target = new ObjectC(); // 或 target = new ObjectD();
target.receiveMessage("Your message here");
```
这样做的好处是可以根据运行时的需求,动态地改变消息的接收者,提高了代码的可复用性和灵活性。