본문 바로가기
728x90

java4

람다 표준 함수적 인터페이스 Java 8부터 도입된 표준 함수적 인터페이스는 `java.util.function` 패키지에서 제공되며, 함수형 프로그래밍을 지원하기 위해 설계된 인터페이스들입니다. 이들 인터페이스는 람다 표현식과 함께 사용되며, 다양한 작업(조건 검사, 데이터 변환, 소비 등)을 간결하게 처리할 수 있도록 도와줍니다.### Java 표준 함수적 인터페이스 다음은 Java 표준 함수적 인터페이스의 주요 유형과 그 특징입니다: #### 1. Predicate - 목적: 조건을 검사하여 `true` 또는 `false`를 반환. - 추상 메서드: `boolean test(T t)` - 사용 예: 리스트에서 필터링, 특정 조건 확인.Predicate isEven = num -> num % 2 == 0;System.out.pr.. 2025. 4. 10.
디자인패턴 - Strategy 패턴 Strategy 패턴은 객체의 행위를 정의하고 이를 동적으로 변경하거나 교체할 수 있도록 설계하는 행위 디자인 패턴입니다.이 패턴은 다양한 알고리즘(혹은 행위)을 캡슐화하여 객체 간의 의존성을 제거하고 확장성을 높이는 데 도움을 줍니다.### 핵심 개념1. 알고리즘을 캡슐화:   - 특정 행위를 수행하는 알고리즘을 각각의 클래스(전략)로 캡슐화하여 독립적으로 관리합니다.2. 동적 교체:   - 실행 중에 알고리즘을 변경하거나 교체할 수 있는 유연성을 제공합니다.3. 확장성 강화:   - 새로운 알고리즘을 추가하려면 기존 코드를 수정하지 않고 새로운 클래스를 추가하면 됩니다.4. 느슨한 결합:   - 클라이언트는 알고리즘의 세부 구현에 의존하지 않고 인터페이스를 통해 접근합니다.### 구조Strategy .. 2025. 4. 10.
Optional Java의 `Optional` 클래스는 값의 존재 여부를 나타내는 컨테이너 객체로, null을 안전하게 처리하기 위해 사용됩니다. 값이 존재하면 해당 값을 포함하고, 값이 없으면 비어 있는 객체를 반환합니다. 이를 통해 NullPointerException(NPE)을 방지하고 더 명확한 코드를 작성할 수 있습니다.### 특징 1. null 대체    - `Optional`을 사용하면 null 값을 직접 다루지 않아도 되며, 값이 비어 있는 경우를 안전하게 처리할 수 있습니다. 2. 표준화된 API    - 값의 존재 여부를 확인하고 처리할 수 있는 다양한 메서드가 제공됩니다. 3. 함수형 프로그래밍    - 함수형 스타일로 값을 처리하고, 필요한 경우 추가 작업을 체이닝으로 처리할 수 있습니다.### 사.. 2025. 4. 8.
Enum Java의 enum은 특정 값의 집합을 정의할 때 사용되는 데이터 타입으로, 열거형(enumeration)을 구현하는 데 적합합니다.이를 활용하면 상수 집합을 더 가독성 있고 타입 안정성을 보장하는 방식으로 사용할 수 있습니다.예를 들어, 특정 값만 허용되는 경우에 enum을 사용하면 실수를 방지할 수 있습니다.특징1. 값의 집합 정의    - enum을 사용하면 미리 정의된 상수 값의 집합을 만들 수 있습니다.    - 예: 색상, 요일, 방향 등과 같이 제한된 선택지가 있는 경우 사용. 2. 타입 안정성    - enum은 특정 값 외의 데이터가 들어갈 수 없도록 제한합니다. 3. 객체처럼 활용 가능    - 각 상수는 객체로 취급되며, 메서드와 필드를 가질 수 있습니다. 4. Switch문과 함께 .. 2025. 4. 8.
728x90