利用单一职责原则的代码
时间: 2024-04-14 13:07:50 浏览: 23
下面是一个利用单一职责原则的简单例子:
```python
class Car:
def __init__(self, brand, model, year, color):
self.brand = brand
self.model = model
self.year = year
self.color = color
self.engine = Engine()
self.electronics = Electronics()
def start_engine(self):
self.engine.start()
def stop_engine(self):
self.engine.stop()
def play_music(self, song):
self.electronics.play_music(song)
def turn_off_music(self):
self.electronics.turn_off_music()
class Engine:
def __init__(self):
pass
def start(self):
print("Engine started.")
def stop(self):
print("Engine stopped.")
class Electronics:
def __init__(self):
self.music_player = MusicPlayer()
def play_music(self, song):
self.music_player.play(song)
def turn_off_music(self):
self.music_player.turn_off()
class MusicPlayer:
def __init__(self):
pass
def play(self, song):
print(f"Playing {song}...")
def turn_off(self):
print("Music player turned off.")
```
在这个例子中,我们有一个 `Car` 类,它有一个 `Engine` 对象和一个 `Electronics` 对象作为属性。`Car` 类只负责启动引擎和播放音乐等功能,而引擎和电子设备的操作则由它们各自的类负责。这样,每个类都只负责一个特定的职责,代码更加清晰和易于维护。