Код IT Загрузка примера кода…

Java main.java
// Java (хороший пример)
interface Discount {
    double apply(double amount);
}

class SeasonalDiscount implements Discount {
    public double apply(double amount) {
        return amount * 0.9;
    }
}

class VipDiscount implements Discount {
    public double apply(double amount) {
        return amount * 0.8;
    }
}

public class OrderCalculator {
    public double calculateTotal(List<Item> items, Discount discount) {
        double total = items.stream().mapToDouble(Item::getPrice).sum();
        return discount.apply(total);
    }
}
// Java (хороший пример)
interface Discount {
    double apply(double amount);
}

class SeasonalDiscount implements Discount {
    public double apply(double amount) {
        return amount * 0.9;
    }
}

class VipDiscount implements Discount {
    public double apply(double amount) {
        return amount * 0.8;
    }
}

public class OrderCalculator {
    public double calculateTotal(List<Item> items, Discount discount) {
        double total = items.stream().mapToDouble(Item::getPrice).sum();
        return discount.apply(total);
    }
}