나는 Collections를 통해 sifting하는 데 사용되는 Predicate라는 인터페이스를 사용하고 있습니다. 예를 들어, 나는Java : 싱글 톤 및 제네릭을 사용하는 디자인
내 질문은 이것이다 등,
public class BlackCatPredicate implements Predicate<Cat> {
public boolean evaluate(Cat c) {
return c.isBlack();
}
}
을 정의하고 고양이의 컬렉션에 술어를 적용하는 몇 가지 유틸리티를 findAll(Collection<T> coll, Predicate<T> pred)
방법을 사용, 그냥 검은 사람을 얻을 수 있습니다 : 나 ' 내 코드 전체에서 검은 고양이를 찾는다면, BlackCatPredicate를 반복해서 계속 인스턴스화 할 필요가 없습니다. 인스턴스가 하나만 있어야합니다. 그렇지만 많은 술어를 작성하는 과정에서 각자를 싱글 톤으로 구현하고 싶지는 않습니다. 그래서 여기에 적절한 디자인이 무엇입니까?
나는 Cat 자체가 아니라 "Cats"클래스를 넣을 것입니다. –