728x90 Programming16 JAVA의 개발 디자인 패턴들 : 싱글턴, 팩토리 메소드 Singleton Pattern 클래스에 인스턴스가 하나만 있는지 확인하고 이에 대한 전역 액세스 지점을 제공합니다. public class Singleton { private static Singleton instance; private Singleton() { // Private constructor to prevent instantiation } public static Singleton getInstance() { if (instance == null) { instance = new Singleton(); } return instance; } } 사용 예 Singleton singleton = Singleton.getInstance(); Factory Method Pattern 객체를 생성하기 위.. 2024. 1. 10. JAVA 8의 주요기능 : 람다, Stream Java 8에는 Java 코드의 표현성, 가독성 및 유연성을 향상시키기 위한 몇 가지 중요한 기능과 향상된 기능이 도입되었습니다. Java 8에 도입된 두 가지 주요 기능은 람다 표현식과 Stream API입니다. 람다 식 람다 표현식은 단일 메서드 인터페이스(기능 인터페이스)의 인스턴스를 표현하는 간결한 방법을 소개합니다. 익명 함수 생성을 허용하여 코드의 가독성과 유연성을 향상시킵니다. Syntax (parameters) -> expression 예 // Traditional anonymous class Runnable runnable1 = new Runnable() { @Override public void run() { System.out.println("Hello, world!"); } }; /.. 2024. 1. 9. JVM의 주요기능 JVM(자바 가상 머신): JVM(Java Virtual Machine)은 JRE(Java Runtime Environment)의 필수 부분이며 Java 바이트코드 실행을 담당합니다. 이는 기본 하드웨어의 플랫폼 독립적인 추상화를 제공하므로 Java 프로그램이 호환 가능한 JVM 구현이 있는 모든 장치 또는 운영 체제에서 실행될 수 있습니다. JVM의 주요 기능: 1. 로드 및 적합성 확인: JVM은 컴파일된 Java 바이트코드를 클래스 파일에서 메모리로 로드하고 바이트코드의 무결성을 확인합니다. 2. 실행: JVM은 바이트코드를 호스트 시스템의 네이티브 기계어 코드로 해석하거나 컴파일하여 실행합니다. 3. 메모리 관리: JVM은 힙 및 스택 관리를 포함하여 Java 프로그램에 대한 메모리 할당 및 할당.. 2023. 12. 30. JMM(Java Memory Model)이 개발자에게 미치는 영향 JMM(Java Memory Model)은 Java 프로그램이 컴퓨터 메모리와 상호 작용하는 방식과 스레드가 공유 변수를 통해 통신하는 방식에 대한 규칙과 지침을 정의합니다. 이는 멀티스레드 Java 애플리케이션에서 적절한 동기화 및 스레드 안전성을 보장하는 데 중요한 역할을 합니다. Java 메모리 모델의 주요 개념: 공유 메모리: Java 애플리케이션의 모든 스레드는 모든 스레드에 액세스할 수 있는 변수를 포함하는 동일한 기본 메모리를 공유합니다. 스레드별 메모리: 각 스레드에는 캐시 또는 공유 메모리의 변수 복사본을 포함하여 자체 로컬 메모리가 있습니다. 가시성: 한 스레드에서 공유 변수에 대한 변경 사항은 로컬 캐싱으로 인해 다른 스레드에 즉시 표시되지 않을 수 있습니다. 원자성: 32비트 또는 .. 2023. 12. 29. 이전 1 2 3 4 다음 728x90