Так что в основном название звучит намного более привлекательно, чем реальный вопрос.Каковы некоторые методы динамической валидации для общего класса?
Я пишу приложение, в котором хотел бы реализовать систему достижений. Если у меня есть все мои достижения, созданные как экземпляры родового класса, как я могу написать метод для проверки этих достижений (то есть определить, достиг ли пользователь или превысил цели), когда тип совершенного умения может варьироваться, число условий может быть изменен, и тип проверки может отличаться?
Например:
Достижение - 10000 очков!
Типа - точка общей
Значение (Х) - 10000
условие - 1
Validation - больше, чем X
против
Достижения - Ультра-осколочной
Типа - убивает
Value (X) - 10
Тип - время
Значение (Y) - 10 секунд
Условия - 2
Валидация - не менее X менее Y
Я стараюсь избегать жесткого кодирования функции валидации для каждого достижения, поскольку они в основном родовые, и единственная разница в том, как они проверяются.
Как и класс достижение выглядит как
public class Achievement
{
boolean locked;
String name;
String desc;
public Achievement(string n, string d)
{
//ctor code
}
}
Я пытаюсь придумать способ сделать это без указателей на функции, и я терпеть неудачу. Кроме того, можете ли вы использовать указатели на функции в java? Im новый для языка :(
В java нет указателей на функции. –
@Shengyuan Lu Я думаю, что он/она знает, что в java нет указателей на функции. @FlyingStreudel Мой совет - ждать появления Java 7 Closures. –