Programming/JAVA18 Object와 오버라이딩(Overriding) Object 클래스모든 클래스의 최상위 클래스아무것도 상속받지 않으면 자동으로 Object를 상속받게 됨.즉, Object가 가지고 있는 메서드는 모든 클래스에서 다 사용할 수 있다는 의미이다. 🍅 가장 많이 사용되는 메서드 - 반드시 오버라이드(Override)해서 사용해야 함- equals: 객체가 가진 값을 비교할 때 사용- toString: 객체가 가진 값을 문자열로 반환- hashCode: 객체의 해시코드 값을 반환 위 3가지의 메서드는 자주 쓰이는 대표적인 메서드로, 개발자도구에서도 바로 사용할 수 있다. 💻 실습 [오버라이드 안 한 ver]1. Student 클래스를 생성한다.2. Student 클래스 안에 name, number, birthYear 필드를 선언한다.3. main .. 2024. 10. 10. InputStream / OutputStream(byte단위) InputStream(입력스트림)과 OutputStream(출력스트림)은 기본 스트림으로 byte 단위로 데이터를 다룬다. FileInputStream / FileOutputStream파일로부터 데이터를 읽기/쓰기 위한 입력/출력용 기본 스트림바이트 단위의 입력/출력을 처리하므로 이미지나 오디오 파일과 같은 이진 파일을 다룰 때 유용하다. InputStream이 추상 클래스는 바이트(Byte) 입력 스트림을 나타내는 모든 클래스의 슈퍼 클래스다.하위 클래스에는 FileInputStream, ByteArrayInputStream이 있음(xxxInputStream 식으로 표현됨) FileInputStream: 기존 파일과 연결된 입력 스트림 객체를 생성 FileInputStream(File fil.. 2024. 6. 11. 스프링 빈과 의존관계(Dependency Injection) ✨ 스프링 빈(Bean)을 등록하는 데는 크게 2가지 방법이 있다. 1. 컴포넌트 스캔(Component Scanning) @Service, @Repository, @Controller 등과 같은 어노테이션을 사용하여 클래스를 빈으로 등록한다. (해당 어노테이션들은 @Component를 포함하고 있음) 이 방법은 클래스에 어노테이션을 붙이면 스프링이 자동으로 해당 클래스를 찾아서 빈으로 등록하는 방식이다. @Service public class MyService { //... } 🍅 여기서 잠깐! @Autowired라는 어노테이션을 사용하려면, 기존 컨트롤러,서비스,레포지토리에도 각각 @Controller,@Service,@Repository 어노테이션을 사용해줘야 한다. 그렇지 않을시 해당 클래스들은 .. 2024. 1. 12. 테스트 케이스 - assertThrows assertThrows는 JUnit 5에서 제공하는 메서드로, 특정 예외가 발생하는지 테스트하는 데 사용된다. 특히 메서드가 예외를 던지는 것을 예상하고, 해당 예외가 실제로 발생하는지 테스트할 때 유용하게 사용되는 특징이 있다. import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertThrows; public class MyServiceTest { @Test public void testDivideByZero() { MyService myService = new MyService(); // 특정 메서드 호출 시 ArithmeticException이 발생하는지 확인 assertThrows(Arithmet.. 2024. 1. 9. AfterEach 어노테이션 사용법 TestCase는 작성한 각각의 테스트들을 class 단위로 한 번에 테스트 할 수 있다는 장점이 있다. 그러나, 테스트의 순서는 보장되지 않아 한 번에 돌리는 경우 무작위로 테스트 된다는 단점도 공존한다.🤨 (따라서 순서에 의존적으로 설계하면 안됨!) 그래서 테스트가 하나 끝나면 clear해줘야 하는데, 그럴 때 사용하는 것이 바로 AfterEach 어노테이션이다. @AfterEach (AfterEach 어노테이션) : 해당 어노테이션을 사용하면 각각의 테스트 메소드가 실행된 후에 정리 작업이나 공통적인 후처리 작업을 수행할 수 있다. import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; import static org.j.. 2024. 1. 4. 테스트 케이스 - Assertions 스프링부트 프로젝트를 하면서 테스트 케이스를 작성할 때 사용하는 메서드 중의 하나인 Assertions의 두 가지 버전에 대해 설명하고자 한다. ☝️ Assertions (org.junit.jupiter.api 패키지 제공) : 테스트 케이스를 작성할 때, JUnit과 함께 자주 사용되는 것 중 하나인 Assertion 테스트 결과를 검증하고 예상 값과 실제 값이 일치하는지 확인하는 데 사용된다. import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.*; public class MyServiceTest { @Test public void testAddition() { MyService myService = new.. 2024. 1. 4. 이전 1 2 3 다음