목록자바 (2)
기록하는 공간

assertThatThrownBy와 assertThatCode는 무엇인가. assertThatThrownBy(() -> ~~ ) assertThatThrownBy()는 예외가 던져지면 테스트가 성공한다. 예외가 던져지지 않으면 오류가 발생한다. assertThatCode(() -> ~~) assertThatCode()는 예외가 던져지지 않으면 실패하지 않는다. 어떠한 예외도 던지지 않을 경우 assertThatCode(() -> ~~).doesNotThrowAnyException()를 사용하면 된다. 아래의 예시를 보면 이해가 더 쉬울 것이다. 예시 예를 들어 Car라는 클래스가 있다. public class Car { private final String name; private int position..

오버로딩과 오버라이딩은 이름이 비슷하여 서로 혼동하기 쉽지만 그 차이는 명확하다. 오버로딩과 오버라이딩 - 오버로딩(overloading) - 기존에 없는 새로운 메서드를 정의하는 것(new) - 오버라이딩(overriding) - 상속받은 메서드의 내용을 변경하는 것(change, modify) 오버로딩과 오버라이딩의 차이를 하나씩 살펴보자. 1. 오버로딩(overloading) 1.1 오버로딩이란? 기존에 없는 새로운 메서드를 정의하는 것 한 클래스 내에 같은 이름의 메서드를 여러 개 정의하는 것을 ‘메서드 오버로딩(method overloading)’ 또는 ‘오버로딩(overloading)’이라고 한다. 오버로딩이 성립하기 위한 조건이 있다. 메서드 이름이 같아야 한다. 매개변수의 개수 또는 타입이..