Я только начинаю с Java, и у меня возникают проблемы со следующим кодом. Я использовал что-то вроде этого, чтобы вызвать метод нестатического применения из статического метода, но я не считаю его очень эффективным. Я установил список массивов правил, которые необходимо применить, но я не могу заставить его работать.Вызов метода из массива-списка объектов
ClassificationRule rules = new RuleFirstOccrnc();
ClassificationRule rules1 = new RuleOccrncCount();
rules.apply(aUserInput);
rules1.apply(aUserInput);
Я получаю эту ошибку при попытке вызвать метод применить() из ClassificationRule «Метод применим (String) не определено для типа ArrayList». Любая помощь будет принята с благодарностью!
package tweetClassification;
import java.util.ArrayList;
public class PrioritRuls {
//Set of rules to be applied
final static ArrayList<ClassificationRule> rulesA
= new ArrayList<ClassificationRule>();
static{
rulesA.add(new RuleFirstOccrnc());
rulesA.add(new RuleOccrncCount());
}
// *******************************************
public static void prioritize(final String aUserInput){
rulesA.apply(aUserInput); //ERROR
// The method apply(String) is undefined
// for the type ArrayList<ClassificationRule>
}
}
package tweetClassification;
public class ClassificationRule {
// *******************************************
public void apply (final String aUserInput) {
apply(aUserInput);
}
}
Спасибо за быстрый ответ, который имеет прекрасный смысл. Очень ценим! – tom3322