inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍

정리

메서드 참조 4가지 유형(정적, 임의 객체) 구분 할수 있는 방법에 대해서,

해결된 질문

134

생각하는자

작성한 질문수 139

0

 학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.


1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
안녕하세요. 궁금증이 생겨서 질문을 드립니다.

메서드 참조의 4가지 유형중

정적메서드 참조, 임의 객체의 인스턴스 메서드 참조의 표현 방식을 보시면

image.png


"클래스명::메서드명" 똑같이 적힌 것 을 알수 있었습니다.

 

그래서 함께 쓰면 어떻게 될까 해보니 써지더라고요.

여기서 질문이 생깁니다.

이렇게 임의 객체, 및 정적 메서드를 같이 쓸 경우 구분법이 따로 있냐요?(아니면 변수 이름을 잘 지정해야 하는지?)

Ide의 도움으로 메서드 이름을 클릭으로 구분은 가능한데,

image.png

다른 방법이 없는지 궁금합니다.

답변 부탁 드립니다.

수정1 : 사진 수정(다른 것들도 되는지 확인하기 위해서)

java 함수형-프로그래밍 lambda optional

답변 1

1

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

생각하는자님께서 질문해 주신 메서드 참조의 구분에 관한 내용에 대해 설명드리겠습니다. 메서드 참조 방식은 크게 네 가지로 분류됩니다:

  1. 정적 메서드 참조: 클래스명::메서드명

    • 특정 클래스의 정적 메서드를 참조합니다.
  2. 특정 객체의 인스턴스 메서드 참조: 객체명::메서드명

    • 이미 생성되어 있는 객체의 인스턴스 메서드를 참조합니다.
  3. 임의 객체의 인스턴스 메서드 참조: 클래스명::메서드명

    • 스트림 요소들이 특정 클래스의 인스턴스인 경우, 해당 인스턴스의 메서드를 참조합니다.
  4. 생성자 참조: 클래스명::new

    • 클래스의 생성자를 참조합니다.

정적 메서드 참조와 임의 객체의 인스턴스 메서드 참조는 문법적으로 유사하게 보일 수 있지만, 사용되는 문맥에서 주로 구분됩니다. 예를 들어, 스트림 내에서 사용하는 경우에는 해당 스트림의 요소 타입에 따라 메서드 참조의 의미가 달라질 수 있습니다.

  • 정적 메서드 참조는 메서드가 특정 객체 없이 호출되어야 할 때 사용됩니다.
  • 임의 객체의 인스턴스 메서드 참조는 보통 스트림에서 각 요소에 대해 메서드를 호출할 때 사용됩니다.

IDE의 도움을 받아 메서드 참조의 정확한 의미를 확인하는 것도 유용합니다. 가독성을 높이기 위해 변수 이름을 명확하게 지정하는 것은 항상 좋은 습관입니다.

좀 더 구체적인 예제나 상황에 대한 설명이 필요하시면 추가 질문 남겨주세요.

이해하시기 더 쉽게, 다음의 공식 문서 원문 URL을 참고하시면 좋겠습니다: Spring Data JPA - Reference Documentation v3.1.5 - Query Methods

감사합니다!

db sql vs java stream 비교 궁금증 알려주세요!

1

70

1

파라미터 구분이 안되는지..?

0

68

1

자바 21 버전을 꼭 써야하나요??

0

143

2

9. 스트림 API3-컬렉터 오타?

0

78

2

(추석 챌린지) 복습 정리내용

0

94

1

람다 궁금한 점

0

73

2

스트림과 for문 질문

0

41

1

디폴트 메서드를 사용한 리펙토링

0

51

1

실무에서의 커스텀 Collector 사례 여부

0

63

1

IntelliJ 한글 깨지는 현상 문의

0

198

1

함수형 프로그래밍 적용 범위/원칙

0

59

1

스트림에 대해서 질문(float)은 사용하는지

0

55

1

[자료 패키지 누락] 2.람다 자료에서 문제 패키지명 생략 (25page)

0

60

2

지연 평가

0

68

1

메서드 시그니처

0

100

3

고급편 우선순위

0

129

3

스프링 데이터 JPA 인터페이스에서의 default 메서드 사용

0

112

2

독립적인 스레드 할당 시 스레드 개수는 어떻게 할당해야 할까요?

0

85

1

병렬 프레임 병목 현상 해결책에 대해 궁금한 점

0

102

1

스트림 중복 에러 관련 질문

0

69

1

자바 버전이 31 까지 업데이트 된다면 새로운 자바 강의를 추가 하실 건가요?

0

132

1

임계값과 스레드수를 줄일 경우 교착상태가 발생할수 있는건가요?

0

100

2

변수 합치기에 대해서 질문드립니다!

0

80

2

flatMap 응용 방법에 대해서, 이렇게 하는게 맞는지?

0

122

1