본문 바로가기

JVM

(3)
[Java] 변수, 메서드 선언위치에 따른 변수의 종류 변수의 종류 선언 위치 생성 시기 클래스 변수 클래스 영역 클래스가 메모리에 올라갈 때 인스턴스 변수 인스턴스가 생성되었을 때 지역 변수 클래스 영역 이외의 영역 (메서드, 생성자, 초기화 블럭 내부) 변수 선언문이 수행되었을 때 1. 인스턴스 변수클래스 영역에 선언되며, 클래스의 인스턴스를 생성할 때 만들어진다. 이 때문에 인스턴스 변수의 값을 읽어 오거나 저장하기 위해서는 먼저 인스턴스를 생성해야 한다. 인스턴스는 독립적인 저장공간을 가지므로 서로 다른 값을 가질 수 있다. 2. 클래스 변수인스턴스 변수 앞에 static을 붙이기만 하면 된다. 인스턴스 변수와는 달리, 모든 인스턴스가 공통된 저장공간(변수)을 공유한다.인스턴스를 생성하지 않고도 언제라도 바로 사용할 수 있..
[Java] Java 개요 Java란?썬 마이크로시스템즈에서 개발한 객체지향 프로그래밍 언어. 특징1. 운영체제에 독립적자바 응용프로그램은 운영체제나 하드웨어가 아닌 JVM하고만 통신하고 JVM이 자바 응용프로그램으로부터 전달받은 명령을 해당 운영체제가 이해할 수 있도록 변환하여 전달한다. 자바로 작성된 프로그램은 운영체제에 독립적이지만 JVM은 운영체제에 종속적이어서 썬 마이크로시스템즈에서는 여러 운영체제에 설치할 수 있는 서로 다른 버전의 JVM을 제공하고 있다. 2. 객체지향언어객체지향 개념의 특징인 상속, 캡슐화, 다형성이 잘 적용된 순수한 객체지향언어이다. 3. 자동 메모리 관리자바로 작성된 프로그램이 실행되면, 가비지컬렉터가 자동적으로 메모리를 관리해주기 때문에 프로그래머는 메모리를 따로 관리하지 않아도 된다. 4. 멀..
[JAVA] JVM, JRE, JDK JVM(Java Virtual Machine)란?자바 가상 머신. Java 바이트코드(.class)가 실행될 수 있는 런타임 환경을 제공해주는 규격이다.각각의 OS의 구성이 다르기 때문에 JVM, JRE, JDK는 플랫폼에 의존적이지만, Java는 플랫폼에 독립적이다.※ 플랫폼 의존적 플랫폼에 따라 코드가 변경되거나, 다시 컴파일해야 하거나, 또는 아예 실행조차 할 수 없는 경우※ 플랫폼 독립적 특정 운영체제나 기계에 상관없이 사용가능한 경우 JVM의 역할∎ Loads Code : 소스코드 읽기∎ Verifies Code : 소스코드 검증 및 확인(문법 및 정상 동작 확인)∎ Executes Code : 소스코드 실행(실제 머신에서 소스코드를 실행해 프로그램 구동)∎ Provides Runtime Env..