Class TrigonometricalFunction

  • All Implemented Interfaces:
    Function

    public class TrigonometricalFunction
    extends Object
    implements Function
    Стратегия для тригонометрических функций (sin, cos, tan).

    Инкапсулирует логику выбора конкретной тригонометрической функции. Паттерн: Strategy + Factory Method.

    • Constructor Detail

      • TrigonometricalFunction

        public TrigonometricalFunction​(TrigonometricalFunction.Type type)
        Создает тригонометрическую функцию.
        Parameters:
        type - тип функции (SIN, COS, TAN)
    • Method Detail

      • apply

        public double apply​(double... args)
                     throws ExpressionException
        Description copied from interface: Function
        Вычисляет значение функции.
        Specified by:
        apply in interface Function
        Parameters:
        args - аргументы функции (varargs для поддержки унарных/бинарных/многоаргументных функций)
        Returns:
        результат вычисления
        Throws:
        ExpressionException - если количество аргументов не соответствует ожидаемому, или значения аргументов выходят за допустимый диапазон
      • fromName

        public static TrigonometricalFunction fromName​(String name)
                                                throws ExpressionException
        Фабричный метод для создания по имени.
        Parameters:
        name - имя функции ("sin", "cos", "tan")
        Returns:
        экземпляр функции
        Throws:
        ExpressionException - если имя неизвестно