작성
·
435
1
springClasses.stream().filter(Predicate.not(OnlineClass::isClosed))
이부분에서
isClosed는 static함수가 아닌데
그러면 객체::isClosed가 되어야하는거 아닌가요??
왜 타입::isCloese가 된건가요??
답변 1
1
메서드 레퍼런스에 총 네가지 형태가 있는데요. 그 중에서 인스턴스 메서드라 하더라도 "타입::메서드" 형태로, 지금 예로 들어주신 Online::isClosed와 같이 표현할 수 있는 방법을 "임의 객체의 인스턴스 메서드 참조"라고 합니다. 말 그대로 "해당 클래스 타입의 어떤 객체가 가지고 있는 해당 메서드"를 가리키는 겁니다. 즉, 여기서는 OnlineClass 라는 타입의 객체가 가지고 있는 isClosed 라는 인스턴스 메소드를 가리키는 거죠.