메소드 참조
메소드 참조가 무엇인가
메소드 참조를 자주 사용해 왔지만 명확하게 정리해본 적은 없어서 이번에 깔끔하게 정리하고자 한다. 메소드 참조를 한 문장으로 표현하자면 '특정 메소드의 이름을 참조해서 그 메소드를 호출하는 데 사용하는 구문'이다. 특히 람다식을 만들어야 하는 경우에 메소드 참조를 사용해서 더 쉽게 만들 수 있다.
핵심은 메소드 참조의 반환 타입은 결국 functionalInterface 라는 것이다.
메소드 참조 사용 케이스
정적 메소드 참조
static 메소드에 대한 참조이므로 해당 객체를 생성할 필요가 없이 바로 호출이 가능하다.
Integer::parseInt
생성자 참조
ArrayList::new
특정 인스턴스에 대한 메소드 참조
String myString = "hello";
Supplier<String> supplier = myString::toUpperCase;
Last updated