본문 바로가기

분류 전체보기179

[Java] Generic **제네릭(Generic)**은 자바의 기능으로, 클래스나 메서드에서 사용할 데이터 타입을 외부에서 지정할 수 있게 해줍니다. 즉, 제네릭을 사용하면 코드의 재사용성을 높이고, 컴파일 시점에 타입 안정성을 보장할 수 있습니다. 제네릭을 사용하면 다양한 데이터 타입을 처리할 수 있는 클래스를 정의하면서도, 타입 안전성을 유지할 수 있습니다. 이는 특히 컬렉션 클래스에서 많이 사용됩니다. 1. 제네릭의 기본 개념 제네릭 클래스 제네릭 클래스를 사용하면, 하나의 클래스가 여러 타입을 처리할 수 있습니다. 예를 들어, 데이터 타입을 명시하지 않고 클래스에 외부에서 타입을 지정할 수 있습니다.public class Box { private T item; // 타입 T는 외부에서 지정됩니다. publi.. 2024. 9. 28.
[Spring] Lombok Lombok은 자바에서 반복적이고 보일러플레이트 코드를 줄여주는 라이브러리로, 특히 **스프링(Spring)**에서 자주 사용됩니다. Lombok을 사용하면 getter, setter, 생성자, equals, hashCode, toString 등의 메서드를 자동으로 생성할 수 있어 코드가 간결해지고, 유지보수성도 크게 향상됩니다. 스프링에서는 Lombok을 사용해 DTO, 엔티티 클래스, 서비스 로직 등에서 필요한 메서드를 자동으로 생성하여 코드의 중복을 줄일 수 있습니다. 아래에서는 자주 사용되는 Lombok 어노테이션과 그 역할을 설명하고, 스프링에서 어떻게 활용되는지 설명하겠습니다. Lombok 설정하기 Lombok을 사용하려면 프로젝트에 Lombok 의존성을 추가해야 합니다. Maven 또는 Gr.. 2024. 9. 28.
[JAVA] Static static 키워드는 자바에서 매우 중요한 개념으로, 클래스와 객체의 메모리 관리와 관련된 중요한 기능을 제공합니다. static을 사용하면 객체가 아닌 클래스 자체에 속하는 변수나 메서드를 정의할 수 있습니다. 이를 통해 메모리를 효율적으로 관리하고, 여러 객체가 공통으로 사용할 수 있는 자원을 제공할 수 있습니다. 1. static 키워드란? static 키워드를 사용하면 해당 변수나 메서드는 클래스의 모든 인스턴스에서 공유됩니다. 즉, 객체가 아닌 클래스 자체에 속하는 변수나 메서드를 정의하는 데 사용됩니다. 2. static의 특징  • 클래스 로딩 시 메모리에 할당: static 변수나 메서드는 프로그램이 시작될 때 클래스가 로드되면서 메모리에 할당됩니다. 객체가 생성되기 전에 이미 메모리에 존.. 2024. 9. 24.
[JAVA] 빌더(builder) 빌더 패턴 (Builder Pattern) 빌더 패턴은 객체 생성 시, 복잡한 생성자를 대체하고 가독성 및 유지보수성을 높이기 위한 디자인 패턴입니다. 특히, 매개변수가 많거나, 특정 설정이 필요한 경우 객체 생성 과정을 더 유연하게 처리할 수 있게 해줍니다. 빌더 패턴의 주요 특징  1. 유연한 객체 생성: 필수적인 값만 설정하고, 선택적인 값은 나중에 설정할 수 있는 유연성을 제공합니다. 2. 가독성 향상: 복잡한 생성자 호출 방식보다 각 매개변수를 명시적으로 설정하여 코드를 더 읽기 쉽게 만듭니다. 3. 불변 객체(Immutable Object) 생성: 빌더 패턴은 한 번 설정된 값이 변하지 않는 불변 객체를 만드는 데 매우 유용합니다. 4. 유지보수성 향상: 매개변수가 많아지거나 변경될 때도 쉽게.. 2024. 9. 24.
[JAVA] 예외처리(Exception) 자바의 예외 처리(Exception Handling)는 프로그램 실행 중에 발생할 수 있는 오류(에러)나 예외적인 상황을 처리하는 메커니즘입니다. 자바는 예외를 처리하기 위해 try-catch-finally 블록, throw와 throws 키워드, 그리고 사용자 정의 예외(Custom Exception) 등을 제공합니다. 자바의 예외 처리 시스템은 프로그램의 안정성과 유지보수성을 높여주는 중요한 기능입니다. 1. 예외란 무엇인가? **예외(Exception)**는 프로그램 실행 중에 발생하는 비정상적인 상황을 의미합니다. 예외가 발생하면 프로그램의 정상적인 흐름이 중단될 수 있으며, 이를 적절히 처리하지 않으면 프로그램이 비정상 종료될 수 있습니다. 자바에서 예외는 Throwable 클래스를 상속받는 두.. 2024. 9. 24.
[JAVA] 자바의 동작원리(JVM, JRE, JDK) 자바의 동작 원리를 이해하려면 JVM(Java Virtual Machine), JRE(Java Runtime Environment), **JDK(Java Development Kit)**라는 개념을 자세히 살펴보는 것이 중요합니다. 이들은 자바 프로그램이 실행되는 과정을 구성하는 핵심 요소들입니다. 자바가 “한 번 작성하면 어디서든 실행할 수 있다”(Write Once, Run Anywhere)라는 철학을 어떻게 실현하는지 이해하는 데 도움을 줍니다. 1. JDK, JRE, JVM의 관계 JDK (Java Development Kit)  • JDK는 자바 개발을 위한 도구 모음입니다. 여기에는 자바 컴파일러(javac), 표준 라이브러리, JRE 등이 포함되어 있습니다. 개발자가 자바 프로그램을 작성하고.. 2024. 9. 24.