酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

有多种农场、每个农场喂养多种动物 按照依赖倒转原则重构系统写出代码

以下是一个使用 Java 语言遵循依赖倒转原则重构的简单示例代码,用于模拟多个农场喂养多种动物的系统: ```java interface Animal { void eat(); } class Cow implements Animal { @Override public void eat() { System.out.println("Cow is eating."); } } class Chicken implements Animal { @Override public void eat() { System.out.println("Chicken is eating."); } } interface Farm { void feedAnimals(); } class ConcreteFarm implements Farm { private List<Animal> animals; public ConcreteFarm() { animals = new ArrayList<>(); } public void addAnimal(Animal animal) { animals.add(animal); } @Override public void feedAnimals() { for (Animal animal : animals) { animal.eat(); } } } public class Main { public static void main(String[] args) { Farm farm = new ConcreteFarm(); farm.addAnimal(new Cow()); farm.addAnimal(new Chicken()); farm.feedAnimals(); } } ``` 在上述代码中: - 定义了`Animal`接口,`Cow`和`Chicken`类实现了该接口,确保了动物行为的统一定义。 - `Farm`接口定义了农场的操作,`ConcreteFarm`类实现了该接口,通过持有`Animal`对象的列表来喂养动物。 这样的设计遵循了依赖倒转原则,高层模块(`Farm`)不依赖于具体的动物实现,而是依赖于抽象(`Animal`接口)。 [2024-09-26 16:57:07 | AI写代码神器 | 382点数解答]

相关提问