import java.util.*; class Test { class Predicate { boolean test(final Collection src) { return true; } boolean test(final Iterable iterable) { return false; } } public void testPredicate() { final Predicate predicate = new Predicate<>(); predicate.test(new ArrayList()); } }