Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- ABAP SELECT
- Internal Table 헤더라인
- 싱글톤 패턴 사용이유
- Nested structure
- Data Element
- ABAP 구조체 선언
- ABAP DELETE
- ABAP MODIFY
- ABAP INSERT
- 헤더라인
- sap
- ABAP UPDATE
- 인터널테이블
- abstrac class
- ABAP OPEN SQL
- OPEN SQL
- Internal Table
- java
- ABAP Internal Table
- ABAP DATA 구조체
- Internal Table header
- abap
- DOMAIN
- ABAP 헤더
- ABAP TYPE 구조체
- ABAP WHERE
- ABAP INTO
- ABAP SQL
- 인터널 테이블 생성
- ABAP FROM
Archives
- Today
- Total
행복한 째아의 개발 블로그
[Java] Singleton pattern 사용 이유와 단점 본문
Singleton pattern이란?
싱글톤 패턴은 오직 하나의 인스턴스만 생성하여 사용하는 디자인 패턴이다.
+) 인스턴스란 객체를 실체화한 것
Singleton pattern을 사용하는 이유
1. 메모리 낭비 방지
싱글톤 패턴 사용 시 한 개의 인스턴스를 고정 메모리 영역에 생성한다.
이는 추후 해당 객체에 접근할 때 메모리 낭비를 방지할 수 있다.
2. 쉬운 데이터 공유
싱글톤 패턴에서 사용하는 인스턴스는 전역으로 사용하기 때문에 데이터를 공유하며 사용할 수 있다.
3. 속도 향상
이미 생성된 객체를 가져다가 사용하므로 객체 생성에 소요되는 시간을 줄일 수 있다.
Singleton pattern 사용시 단점
1. 높은 결합도
싱글톤에서 사용하는 인스턴스가 너무 많이 공유되거나 다양하게 사용되면 다른 클래스들의 결합도가 높아진다.
결합도가 높아지면 수정, 테스트 시 어려움이 생길 수 있다.
2. 멀티 스레드 환경에서의 문제
멀티 스레드 환경에서 동시에 getInstance()를 실행하게 되면 동시에 여러 개의 인스턴스가 생길 수 있다.
이로 인해 일관되지 않은 값들이 생길 수 있다.
Singleton pattern 구현
public class SingleTonClass {
private static SingleTonClass st = new SingleTonClass();
private SingleTonClass() {
}
public static SingleTonClass getInstance() {
return st;
}
}
'JAVA' 카테고리의 다른 글
[Java] 배열의 중복 값 제거하기 (Stream / Set) (0) | 2023.01.25 |
---|---|
[Java] 추상 클래스(Abstrac class)와 인터페이스(Interface) 차이점 (0) | 2023.01.25 |
[Java] 이클립스 단축키 (0) | 2023.01.25 |
Comments