반응형

Java Study 27

JVM(Java Virtual Machine)의 실행 과정

지난 글에 이어서 오늘도 JVM에 대해서 글을 작성해보도록 하겠습니다.지난번에는 JVM이 무엇인지와 그 안의 구조에 대해서 알아보았고, 또한 그 나누어진 구조에서 무엇을 진행할 수 있는지 알아보았습니다.그렇다면 이제 밥을 먹기 위해 숟가락이랑 젓가락이 뭔지 파악한 것이니, 어떻게 하면 밥을 먹는지, 그 JVM의 실행 과정에 대해서 알아보겠습니다. JVM 실행 과정?로드(Loading):클래스 로더가 클래스 파일을 읽어들이고, 해당 클래스의 바이너리 데이터를 메모리에 로드합니다.로드된 클래스들은 Method Area에 배치됩니다.검증(Verification):클래스 파일의 유효성을 검사합니다. 예를 들어, 올바른 바이트 코드 구조와 메모리 접근 권한 등을 확인합니다.준비(Preparation):클래스가 필..

Java Study 2024.06.16

JVM(Java Virtual Machine)의 구조

이번 글에서는 JVM(Java Virtual Machine)이 무엇인지, 그리고 그 구조에 대해서 알아보도록 하겠습니다. JVM(Java Virtual Machine)이란?자바 프로그램이 실행되는 환경을 제공하는 소프트웨어입니다.이것은 은 자바 프로그램이 특정 운영 체제에 종속되지 않고 여러 플랫폼에서 동작할 수 있도록 설계되었습니다.자바 소스 코드는 JVM이 이해할 수 있는 바이트 코드로 컴파일되며, JVM은 이 바이트 코드를 해당 플랫폼에 맞게 해석하여 실행합니다. 이로써 자바 프로그램은 한 번 작성하면 여러 운영 체제와 하드웨어에서 실행될 수 있게 됩니다.JVM(Java Virtual Machine)의 구조는?1. Class Loader Subsystem (클래스 로더 서브시스템)역할: 클래스 파일..

Java Study 2024.06.16

자바 타입 변환

이전 글에서 다양한 종류의 타입들을 알아 보았고, 그 타입들의 메모리 크기나 저장되는 값의 허용 범위 등 세부 내용에 대해 살펴보았었습니다. 그리하여 이번 글에서는 그 타입들 간의 변환이 이루어 지는 것에 대해 알아보겠습니다. 자동 타입 변환?데이터 타입을 다른 타입으로 변환하는 것이다.값의 허용 범위가 작은 타입이 허용 범위가 큰 타입으로 대입될 때 발생된다.byte 정수 타입이 실수 타입으로 대입되면 무조건 자동 타입 변환이 된다.예외 : char 타입보다 허용 범위가 작은 byte타입은 char 타입으로 자동 변환될 수 없다.(데이터의 의미를 왜곡 혹은 손실하기 때문)강제 타입 변환?큰 허용 범위 타입을 작은 허용 범위 타입으로 쪼개어서 저장하는 것이다.캐스팅 연산자로 괄호()를 사용하며, 괄호 안..

Java Study 2024.06.16

Java 변수와 타입

이전 글에서 간단하게 프로그래밍의 3대 요소에 대해서 알아보았습니다. 그 과정에서 아래 표와 같이 기본자료형의 종류에 대해서 알아보았습니다. 그래서 오늘은 조금 더 세부내용으로 들어가 자세하게 알아보도록 하겠습니다.Data Type크기데이터(종류)Dafault Value(for fields)byte1byte정수0short2byte정수0int4byte정수0long8byte정수0Lfloat4byte실수0.0fdouble8byte실수0.0dchar2byte문자nullboolean1byte참, 거짓(True, False)false 변수(Variable)란?변수란 하나의 값을 저장할 수 있는 메모리 번지에 붙여진 이름이다.자바의 변수는 다양한 타입(정수형, 실수형 등)의 값을 저장할 수 없다.변수 선언?변수를 사..

Java Study 2024.06.16

자바 프로그래밍의 3대 요소

프로그래밍의 3대 요소라고 불리는 변수(Variable), 자료형(Datatype), 할당(Assign)이 무엇인지 이해하고 서로의 관계를 파악하는 것 또한 매우 중요하다고 생각하기에 정리해보려고 합니다. 변수(Variable)데이터를 저장하는 메모리 공간의 이름(symbol)자료형(Datatype)변수의 크기와 어떤 종류의 데이터를 저장할 것인지를 결정하는 것할당(Assign)변수에 데이터를 저장하는 것변수에 지정된 데이터 타입에 맞게 데이터를 저장(대입)하는 행위 그렇다면 이 3가지를 어떻게 활용하고 종류는 무엇이 존재하는지 등 세부 내용에 대해서 알아보도록 하겠습니다. 변수의 이름을 짓는 방법?변수의 이름은 숫자로 시작할 수 없다.대소문자가 구분되며 길이에 제한이 없다.$과 _(underscore)..

Java Study 2024.06.16

자바 개발환경(플랫폼의 이해)

Java는 다양한 환경에서 사용되기 위해 세 가지 주요 플랫폼으로 나뉩니다. Java Standard Edition (Java SE), Java Enterprise Edition (Java EE, 현재는 Jakarta EE로 불림), 그리고 Java Micro Edition (Java ME)입니다. 각 플랫폼은 특정 용도와 기능을 가지고 있기에 각각 다른 종류의 애플리케이션을 개발하기 위해 설계되었습니다. Java Standard Edition(Java SE)Java SE는 일반적인 데스크탑 . 및서버 환경에서 동작하는 Java 플랫폼의 기본 버전입니다.주요 API와 라이브러리를 포함하며, 기본적인 자바 애플리케이션 개발에 필요한 모든 도구를 제공합니다.Java SE는 데이터베이스 연결, 네트워크 프로그..

Java Study 2024.06.15

Java란 무엇인가?

우선 자바에 대해 공부해보기에 앞서서 Java란 무엇인지 어느정도는 익히고 들어가야 할 것 같아 간단하게 알아보려고 합니다. Java는 객체지향프로그래밍 언어로, 1995년 썬 마이크로시스템즈(Sun Microsystems)의 제임스 고슬링(Jamese Gosling)과 다른 연구원들이 개발하여 발표했습니다. 처음에는 가전제품 내에 탑재해 동작하는 프로그램을 위해 개발되었지만, 현재는 웹 애플리게이션 분야에서 가장 많이 사용하는 언어 중 하나이고, 안드로이드를 비롯한 모바일 기기용 소프트웨어 개발에도 쓰이며 다양한 플랫폼에서 널리 사용되고 있습니다. 주요 특징?1. 플랫폼 독립성(Write Once, Run Anywhere)Java는 한 번 작성한 코드가 어떤 플랫폼에서도 실행될 수 있는 특징을 가집니다..

Java Study 2024.06.15
반응형