본문 바로가기

Language/JAVA

(3)
[Java] Enum 1. enum이란: 제한된 값만을 갖는 열거형 데이터 타입으로 연관 있는 상수를 편하게 관리할 수 있게 해준다. : 타입 안정성, 가독성, 관리의 용이, 성능 등의 이점이 있다. * enum 사용의 이점 - 타입 안정성 : 특정 범위의 값만 사용하므로 컴파일 오류나 런타임 예외를 줄인다. - 가독성 : 값들이 명시적으로 정의되어 있다. - 관리의 용이 : 값의 추가나 변경이 한 곳에서 가능하여 코드의 유지보수가 용이하다. - 성능 : 컴파일 시 정적인 값으로 변환되어 실행시간에 상수 검색의 오버헤드를 줄인다. (1) 선언: java 확장형을 가지며 class 대신 enum 키워드로 정의 : 열거상수는 대문자로 작성 ex. 요일(월, 화, 수, 목, 금, 토, 일) => 요일을 열거 type, 월~일을 열..
[JAVA] 옵저버 패턴 (Observer pattern) 1. 옵저버 패턴 (Observer pattern) - 객체의 상태 변화를 관찰하는 관찰자들, 즉 옵저버들의 목록을 객체에 등록해 상태 변화가 있을 때마다 메서드 등을 통해 객체가 직접 목록의 각 옵저버에게 통지하도록 하는 디자인 패턴 - 주로 분산 이벤트 핸들링 시스템을 구현하는데 사용된다. - 주체 객체 + 상태의 변경을 알아야 하는 관찰 객체가 존재하며 1:1 또는 1:N의 관계가 될 수 있다. Subject : 이벤트를 발생시키는 주체, 관찰 대상 객체 Observer : 이벤트를 관찰하는 대상, 이벤트가 발생하면 콜백을 받아 notify 함수를 통해 Subject가 발행한 메시지 이외에도, 옵서버 자신이 생성한 인자값을 하위 Observer에게 전달 ConcreateObserver : notif..
[JAVA] 싱글톤 패턴 (Singleton pattern) 1. 싱글톤 패턴 (Singleton pattern) - 객체의 인스턴스가 오직 1개만 생성되는 패턴 - 생성자가 여러 차례 호출되더라도 실제로 생성되는 객체는 하나이고, 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 반환시키도록 만드는 것 [2] 1-1. 싱글톤 패턴의 구현(JAVA) [3] public class 클래스명{ //private 접근 권한을 갖는 정적 필드 선언과 초기화 //private 접근 제한자를 붙여 외부에서 정적 필드값을 변경하지 못하도록 함 private static 클래스명 INSTANCE = new 클래스명(); //private 접근 권한을 갖는 생성자 선언 private 클래스명(){} //public 접근 권한을 갖는 정적 메소드 선언 public s..