Java3 동시성 확장하기 껌이네 (부제 - Runtime Data Area) 라고 JVM 메모리 구성도 모르는 감자가 말했다. 📌 OS 레벨에서의 프로세스와 스레드프로세스보조기억 장치에 저장된 프로그램이 메모리에 적재되어 실행되는 것으로, OS에서 자원을 할당받아 독립적으로 실행되는 단위이다. 각 프로세스는 독립적인 메모리 공간을 가지며, 다른 프로세스와 메모리 영역을 공유하지 않는다.스레드프로세스 내에서 작업을 수행하는 단위로, 프로세스의 메모리 공간을 공유하면서 실행된다. 하나의 프로세스에는 여러 스레드가 존재할 수 있다. 프로세스 메모리 영역코드 영역 (Code Segment / Text Segment)코드 영역은 프로그램의 실행 명령어가 저장되는 메모리 영역으로, 주로 실행할 바이너리 코드와 함수의 기계어 명령이 저장된다. 프로그램의 무결성과 안정성 보장을 위해 읽기 전.. 2024. 9. 22. [Java] Enum을 비교해 보자 Java의 값 비교 방식 자바에서 일반적으로 참조형 객체는 equals() 메서드를, 원시형(primitive type)은 == 연산자를 이용해 비교한다. 1. equals() 메서드 equals()는 Object 클래스의 메서드이며 내부적으로는 == 연산자와 동일하게 주소값 비교를 수행한다. String 클래스와 같은 경우, 메서드 오버라이딩을 통해 문자열 간 비교가 가능해 동등성을 검증할 수 있다. 2. == 연산자 == 연산자의 경우 주소값을 비교하기에 객체의 동일성을 검증하는 방식에 해당된다. 원시 타입의 경우 값 비교가 가능하지만, 참조 타입에 대해서는 동등성이 아닌 동일성을 비교한다. Enum 비교 방식 Enum은 원시 타입이 아니지만, 싱글톤이라는 특징이 있다. 즉, 자바에서 Enum의 인스.. 2024. 4. 15. [Java] String.matches() 대신 Pattern을 사용하자 🤔 String.matches()는 어떻게 구현되어 있을까? // String.java public boolean matches(String regex) { return Pattern.matches(regex, this); } 자바에서 String 클래스의 matches() 메서드에서 내부적으로 Pattern 클래스의 matches 메서드를 호출하고 있는 것을 볼 수 있다. 그렇다면 Pattern의 matches() 메서드는 어떤 방식으로 정규식과 문자열의 매칭 여부를 확인할까? // Pattern.java public static boolean matches(String regex, CharSequence input) { Pattern p = Pattern.compile(regex); Matcher m.. 2024. 3. 17. 이전 1 다음