[Java] JVM(Java Virtual Machine) 이해하기 -3 : 가비지 컬렉터(GC, Garbage Collector)
·
Java/이론 및 문법
해당 글에서는 JVM에서 가비지 컬렉터에 대해 이해하고 종류들을 이해하며 동작과정에 대해 이해를 돕기 위해 작성한 글입니다. 💡 [참고] JVM에 동작과정, 메모리 영역(Runtime Data Area)에 대해 관심이 있으시면 아래의 글이 큰 도움이 됩니다. [Java] JVM(Java Virtual Machine) 이해하기 -1 : 동작 과정해당 글에서는 Java Application 환경에서 Java 소스코드가 JVM 내에서 수행되는 전반적인 과정에 대해서 확인해 봅니다. 1) JVM(Java Virtual Machine) 💡 JVM(Java Virtual Machine) - 자바 프로그램을 실행하기 위한adjh54.tistory.com [Java] JVM(Java Virtual Machine) 이해..
[Java] JVM(Java Virtual Machine) 이해하기 -2 : 메모리 영역(Runtime Data Area)
·
Java/이론 및 문법
해당 글에서는 JVM의 구성요소 중 하나인 Runtime Data Area에 대해 상세하게 알아보기 위해 작성한 글입니다. 💡 JVM의 동작과정에 대해 궁금하시면 아래의 글을 참고하시면 크게 도움이 됩니다. [Java] JVM(Java Virtual Machine) 이해하기 -1 : 동작 과정해당 글에서는 Java Application 환경에서 Java 소스코드가 JVM 내에서 수행되는 전반적인 과정에 대해서 확인해 봅니다. 1) JVM(Java Virtual Machine) 💡 JVM(Java Virtual Machine) - 자바 프로그램을 실행하기 위한adjh54.tistory.com 1) JVM 메모리 영역(Runtime Data Area)💡 JVM 메모리 영역(Runtime Data Area) ..
[Java] JVM(Java Virtual Machine) 이해하기 -1 : 동작 과정
·
Java/이론 및 문법
해당 글에서는 Java Application 환경에서 Java 소스코드가 JVM 내에서 수행되는 전반적인 과정에 대해서 확인해 봅니다. 1) JVM(Java Virtual Machine)💡 JVM(Java Virtual Machine) - 자바 프로그램을 실행하기 위한 가상 머신입니다. 이를 통해 자바 언어로 작성된 프로그램을 특정 운영 체제에 종속되지 않고 실행할 수 있게 해 줍니다. 2) JVM 동작 과정💡 해당 동작과정은 JVM에서 자바 프로그램을 효율적으로 실행하기 위해 컴파일 수행 -> 클래스 로딩 -> 메모리 할당 -> 바이트 코드 해석 및 실행 -> 가비지 컬렉션 -> 예외 처리 -> 프로그램 종료 과정을 수행합니다. 1. 컴파일(Compile)💡 컴파일 (Compile) - 자바 프로그램을..
[Java] 반복문의 제어문(Control Flow Statement) 이해하기
·
Java/이론 및 문법
해당 글에서는 반복문에서 사용하고 있는 제어문에 대해 이해하고 상황에 맞게 사용하는 방법에 대해 알아봅니다 1) 반복문 💡 제어문을 활용할 수 있는 반복문에는 for문, for~each문, while문, do~while문에서 활용이 가능합니다. 💡 [참고] 반복문에 대해 궁금하시다면 아래의 글을 참고하시면 도움이 됩니다. [Java] 사용 목적에 따른 반복문(Loop) 이해하기 해당 글에서는 Java에서 사용목적에 따라 반복문에 대해 이해를 돕기 위해 작성한 글입니다 0) 반복문 요약 💡 반복문은 중점은 속도보다는 각각의 목적에 따라서 사용되기에 각각의 목적에 맞 adjh54.tistory.com 2) 제어문 종류 및 활용 1. break 💡 break - 수행하는 ‘반복문을 즉시 종료’시키는 역할을 수..
[Java] 사용 목적에 따른 반복문(Loop) 이해하기
·
Java/이론 및 문법
해당 글에서는 Java에서 사용목적에 따라 반복문에 대해 이해를 돕기 위해 작성한 글입니다 0) 반복문 요약 💡 반복문은 중점은 속도보다는 각각의 목적에 따라서 사용되기에 각각의 목적에 맞게 사용하는 것이 중요합니다. 💡 그리고 또한 컴퓨터의 하드웨어, 소프트웨어 등에 따라서 속도차이가 발생할 수 있기에 각각의 속도 차이를 확인할 수 없습니다. 분류 반복문 종류 사용 목적 내부 메서드 for 배열/컬렉션의 ‘인덱스’ 기반 처리가 필요한 경우 사용 내부 메서드 for-each 배열/컬렉션에서 인덱스가 필요하지 않고 ‘데이터 요소만’ 처리해야 하는 경우 사용 내부 메서드 Iterator 컬렉션 순회 중 ‘데이터 구조에 변경(삭제)’이 생기는 경우 사용 내부 메서드 while 특정 조건이 충족될 때까지 반복 ..
[Java] 다양한 형 변환(Type Conversion) 방법 이해하기 : 캐스팅(Casting)
·
Java/이론 및 문법
해당 글에서는 Java에서 사용되는 다양한 형 변환(Type Conversion) 방법에 대해서 이해합니다. 1) 형 변환(Type Conversion) : 캐스팅(Casting) 💡 변환(Type Conversion) : 캐스팅(Casting) - 변수의 자료형을 다른 자료형으로 변환하는 것을 의미합니다. 이때 변환되는 자료형은 변수가 담고 있는 값에 따라 결정됩니다. - 형 변환은 암시적 형 변환과 명시적 형변환으로 나뉩니다. [ 더 알아보기 ] 💡 암시적 형변환 - 자동으로 처리되는 형변환을 의미합니다. 💡 명시적 형 변환 - 개발자가 직접 코드를 작성하여 수행하는 형변환을 의미합니다. 2) [기초] 문자열 ↔ 래퍼 클래스 1. 문자열을 래퍼 클래스로 변환 번호 분류-1 분류-2 주요 메서드 1 문..
[Java] JDK(Java Development Kit), Open JDK 이해하기
·
Java/이론 및 문법
해당 글에서는 Java에서 사용되는 JDK(Java Development Kit), Open JDK에 대해 이해를 돕기 위해 작성한 글입니다. 1) Java 1. Java Version 💡 2023년 6월 기준 Java 버전에 대해서 확인해 봅니다. Version LTS 출시 일자 무료 공개 업데이트 종료일 연장 지원일 java SE 6 2006년 12월 11일 2013년 4월 java SE 7 2011년 7월 28일 - OpenJDK : ~2022년 9월 - Oracle : ~2015년 5월 - Red Hat : ~2020년 8월 - Azul : ~2022년 9월까지 java SE 8 O 2014년 3월 18일 - OpenJDK는 Red Hat에 되어 유지보수 되고 있음 - Oracle (상업용) : ..
[Java] String 함수 이해하기 : format, join, valueOf, copyValueOf
·
Java/이론 및 문법
해당 글에서는 java.lang에 속하는 String 함수에 대해서 이해를 돕기 위해 작성한 글입니다.1) String 함수 요약함수설명String.format()- 문자열을 “포맷팅”하기 위해서 사용되는 함수입니다.- 지정된 형식 문자열과 그에 따른 인수들을 입력받아, 지정된 형식으로 포맷팅된 문자열을 반환합니다.String.join()- 문자열 리스트를 “결합”하는 데 사용되는 함수입니다.- 지정된 구분자를 기준으로 입력받은 문자열 리스트를 결합한 결과를 반환합니다.String.valueOf()- 객체를 “문자열로 변환”하는 데 사용되는 함수입니다.- 입력값으로 숫자, 문자, 불리언, 문자열 및 기타 객체를 입력받을 수 있습니다.String.copyValueOf()- 문자열의 일부분을 복사하여 “새로..
[Java] 스레드(Thread) 이해하기 -1 : 구조, 상태, 예시
·
Java/이론 및 문법
해당 글에서는 스레드에 대한 정의 구조, 상태, 예시와 단일 스레드, 멀티 스레드에 대한 이해를 돕기 위한 목적으로 작성한 글입니다.1) 스레드(Thread)1. 스레드(Thread)💡 스레드(Thread)란?- 하나의 프로세스 안에서 독립적으로 실행되는 ‘작은 실행 단위’를 의미합니다.💡 프로세스(Process)란?- 시스템에서 실행 중인 프로그램을 의미합니다.    2. Java에서 스레드(Thread)💡 Java에서 스레드란?- Java에서 스레드는 ‘멀티 스레드(Multi-Thread)’을 지원하여 하나의 프로세스 안에 한 개 이상의 스레드를 지원하는 구조입니다.- Java에서는 멀티 스레드를 통해 ‘비동기식 및 병렬 애플리케이션’을 개발할 수 있습니다  [ 더 알아보기 ]💡 비동기식 및 ..
[Java] UUID 이해 및 사용방법
·
Java/이론 및 문법
해당 글에서는 UUID에 대해서 이해하며 구조를 파악하여 이를 활용할 수 있는 방법에 대해서 이해를 돕기 위해 작성한 글입니다.  1) UUID(Universally Unique Identifier) 정의 및 구조 1. UUID 정의💡 UUID(Universally Unique Identifier)란?- 범용 고유 식별자를 의미하며 중복이 되지 않는 유일한 값을 구성하고자 할때 주로 사용이 되는고유 식별자를 의미합니다.- 주로 세션 식별자, 쿠키 값, 무작위 데이터베이스 키 등에 사용이 됩니다.  2. UUID 구조💡 UUID는 16바이트(128비트) 형태의 구조를 가지며 하나의 UUID 길이는 36자리이며 “4개의 하이픈(-)”과 “32개의 16진수 문자열”로 구성이 되어있습니다. 구조길이 (바이트..