JAVA 인터페이스 ~ 람다식 ~ 예외처리

문세연·2024년 8월 21일

JAVA

목록 보기
5/19

함수형 인터페이스(Functinal Interface)

  • 인터페이스 중 추상 메소드를 하나만 가지고 있는 인터페이스를 함수형 인터페이스라고 한다.

이 때 @FunctionalInterface를 인터페이스 위에 작성하여 단 하나의 추상 메소드만 선언할 수 있도록 제한해야 한다.

링크텍스트

람다식(Lambda Expression)

이름이 없는 메소드로서 값처럼 사용이 가능하며, 매개변수로도 전달이 가능하다.
함수형 인터페이스는 추상 메소드가 한 개만 선언되기 때문에 구현할 때 메소드 이름이 필요 없다.
따라서 람다식 문법은 익명 메소드(Anonymous Method)라고도 부른다.

람다식 문법

  1. (매개변수 형식 나열, ...) -> 리턴값;
  2. (매개변수 형식 나열, ...) -> {2개 이상의 문장을 작성; return 리턴값;};
  3. 매개변수가 딱 한 개만 있을 경우 소괄호, 타입 전부 생략 가능

예외 처리

컴파일 시, 빌드 시, 런타임 시 오류가 발생하면
이를 제어문으로 막을 수 있으나, 제어문으로도 막을 수 없는
오류들을 직접 처리할 수 있어야한다.

예외 처리 문법

try {
	예외가 발생할 수도 있는 문장
	예외가 없을 때 실행할 문장
} catch(예외이름 객체명) {
	예외 발생 시 실행할 문장
} catch(예외이름 객체명) {
	예외 발생 시 실행할 문장
} ...

} finally {
	예외 발생 여부에 상관없이 무조건 실행할 문장
	※ 외부 장치와 연결했을 경우 다시 닫을 때 주로 사용한다.
	또한 finally는 catch로 잡지 못했을 때도 실행된다.
}

예외 발생

직접 예외를 발생시키기 위해서는 예외 던지기를 사용해야 하며, 이 때에는 생성자 호출 전 throw 키워드를 사용한다

ex) throw new BadWordException();


사용자의 정의 예외

  • 기본적으로 제공되는 예외가 아닌 특정 상황에서 직접 예외를 만들어야 한다면, Exception 혹은 RuntimeException을 상속받아서 예외 클래스를 선언해야 한다. Exception은 컴파일러가 체크를 하기 때문에 예외처리를 강제로 해야하고, RuntimeException은 컴파일러가 체크하지 않기 때문에 예외처리를 선택할 수 있다.
profile
안녕하세용!

0개의 댓글