inflearn logo
강의

Course

Instructor

(2026 Latest!) Pass the Information Processing Engineer Practical Exam in One Week

(Previous Exam) 2025 2nd Session Code Question-1

25년 2회 기출 5:40 질문입니다.

Resolved

32

jins0911258547

1 asked

0

인터페이스 예외처리 문제 질문입니다.

일단 인터페이스에서 app메서드가 "정수 입력,출력에 예외를 던질 수 있음" 이라는 형태를 강제시킨 후

람다식(f와 n->n+9)으로 세부 내용을 구현하는게 맞는건가요?

 

추가로 인터페이스의 구현은 implements로 구현한다고 하셨는데 코드에 implements가 없는데 람다식 등으로 구현가능하면 사용하지 않아도 되는것인가요?

python java c 정보처리기사 정보처리산업기사

Answer 2

1

weekendcode

안녕하세요! 답변을 드립니다.

 

1) 람다식으로 세부 내용을 구현하는 게 맞나요?

맞습니다.

 

F는 추상 메서드가 하나뿐인 인터페이스라서, 이런 인터페이스를 함수형 인터페이스라고 합니다.

함수형 인터페이스는 람다식으로 구현할 수 있습니다.

 

즉 아래 둘은 본질적으로 같은 의미입니다.

 

람다식 버전

F f = x -> x * 2;

익명 클래스로 바꾸면

F f = new F() {
    @Override
    public int app(int x) throws Exception {
        return x * 2;
    }
};

이걸 짧게 쓴 것을 람다식으로 봐주시면 됩니다.

 

 

 

2) 왜 implements가 없나요?

오해가 있습니다. 이 키워드는 인터페이스를 상속처럼 받아서 클래스를 작성할 때 사용합니다.

  • implements는 클래스를 선언할 때 씁니다.

  • 람다식은 클래스를 직접 선언하는 문법이 아닙니다.

     

예를 들어 클래스로 구현하면 implements가 필요합니다.

 

그런데 지금 코드는 클래스를 따로 만들지 않고,

F 타입이 필요한 자리에 람다식을 바로 넣었습니다.

이때 컴파일러가 이 람다식을 보고

“아, 이건 F의 app을 구현한 것으로 처리하면 되겠구나”

라고 판단해서 내부적으로 맞는 객체로 처리해 줍니다.

문법상 implements는 안 썼지만 의미상으로는 F를 구현한 것으로 봐주시면 됩니다.

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. 유찬혁님.

질문하신 인터페이스와 람다식, 그리고 예외처리에 관한 내용에 대해 설명드리겠습니다.

인터페이스와 람다식

인터페이스에서 메서드가 “정수 입력, 출력에 예외를 던질 수 있음”이라는 형태를 강제하는 것은 맞습니다. 이러한 인터페이스를 구현할 때는 일반적으로 “익명 클래스” 또는, Java 8 이후부터는 “람다식”을 사용하여 구현할 수 있습니다.

  • 람다식을 이용한 구현: 람다식은 함수형 인터페이스(여러 개가 아닌 오직 하나의 추상 메서드를 가진 인터페이스)를 매우 간단하게 구현할 수 있는 방식입니다. fn->n+9 같은 람다 표현식은 해당 인터페이스를 구현한 것과 동일한 역할을 합니다.

  • implements 키워드 사용 여부: 일반적으로 클래스를 통해 인터페이스를 구현할 때는 implements 키워드를 사용합니다. 그러나 함수형 인터페이스의 경우, 람다식은 그 인터페이스의 추상 메서드 하나를 구현하는 것과 동일한 효과가 있기 때문에, 람다식이나 메서드 참조를 사용할 때 직접 implements 키워드를 사용할 필요는 없습니다.

요약

정리하자면, Java에서 함수형 인터페이스와 람다식을 통해 사용자가 메서드를 간단히 작성할 수 있으며, 이때 직접적으로 implements를 사용할 필요가 없습니다. 람다식은 함수형 인터페이스가 요구하는 특정 시그니처의 메서드를 구현하여 사용하는 것입니다.

추가적인 정보를 위해 관련 질문 URL을 첨부드립니다:
- Java 람다식과 함수형 인터페이스 이해하기 - 람다식의 기본 원리와 작동 방식을 설명합니다.
- 자바 함수형 프로그래밍에 대한 질문 - 함수형 프로그래밍의 장점과 구현 방식을 다룹니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

26년 1회 실기 해설 강의

0

31

2

53번 4-1 자료 오류 있는 것 같습니다.

0

60

2

7번문제

0

48

2

C언어 변형문제 9번문제 Pdf 수정요청

0

37

2

메서드 오버드라드

0

40

2

실수

0

41

1

공부 우선순위 우선강의 알려주세요

0

74

1

생성자 호출순서 강의 10번 문제 30분대 질문입니다

0

41

2

모의고사1회 3번 파이썬문제

0

64

2

C언어 출제변형 6번 문제

0

43

2

c언어 출제변형 강의 질문

0

24

2

28:40

0

27

2

C :  언어 배열과  문자열 수업자료

0

22

2

파이썬 리스트, 딕셔너리 질문

0

35

2

모의고사 관련 질문 건

1

61

3

자료 내용 오류

0

56

2

정적 변수, 정적 메서드(static) v2

0

43

2

v1.2 와 v0.91 PDF

0

94

1

업캐스팅 (부모형태, 자식생성자)

0

45

2

정보처리산업기사 준비중입니다.

0

67

2

실기 D -6

0

100

2

(기출) 2024년 2회 기출문제 - 이론 포함 22분32초 질문입니다

0

51

3

업캐스팅 문제 풀면 업캐스팅이 상속과 문제풀 때 어떻게 해석해야할지 모르겠습니다.

0

53

2

강의파일 통합본

0

74

2