전체 글84 [Java] JVM 메모리 구조 1️⃣ JVM(Java Virtual Machine)이란? 자바 가상 머신 JVM(Java Virtual Machine)은 자바 프로그램 실행환경을 만들어 주는 소프트웨어이다. 자바 코드를 컴파일하여 .class 바이트 코드로 만들면 이 코드가 자바 가상 머신 환경에서 실행된다. JVM은 자바 실행 환경 JRE(Java Runtime Environment)에 포함되어 있다. 현재 사용하는 컴퓨터의 운영체제에 맞는 자바 실행환경 (JRE)가 설치되어 있다면 자바 가상 머신이 설치되어 있다는 뜻이다. ✅ JVM의 특성 ● 스택 기반의 가상머신 ● 단일 상속 형태의 객체 지향 프로그래밍을 가상머신 수준에서 구현 ● 포인터를 지원하되 C와 같이 주소값을 임의로 조작이 가능한 포인터 연산은 불가능 ● 가비지 컬렉.. 2022. 12. 29. [Java] String배열 1️⃣ String배열의 선언과 생성 String[] name = new String[3]; //3개로 이루어진 문자열을 담을 수 있는 배열 배열의 타입이 String인 것도 int배열의 선언과 똑같이 한다. 3개의 String타입의 참조변수를 저장하기 위한 공간이 생기고 참조형 변수의 기본값은 null이다. 그래서 각 요소의 값은 null로 초기화된다. 여기서 null은 어떤 객체도 가리키지 않는 뜻. 아래는 타입별로 변수들의 기본값을 정리한 것. 자료형 기본값 boolean false char '\u0000' byte, short, int 0 long 0L float 0.0f double 0.0d 또는 0.0 참조형 변수 null 2️⃣ String배열의 초기화 String[] name = new S.. 2022. 12. 27. [Java] 배열과 배열의 복사 1️⃣ 배열(array) 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것. 많은 양의 데이터를 저장하기 위해서, 그 데이터의 숫자만큼 변수를 선언해야 한다면 엄청 번거로워진다. 해서 배열을 사용하면 많은 양의 데이터를 저장하고 쉽게 사용할 수 있다. 선언방법 예시 타입[] 변수이름; int[] num; String[] name; 타입 변수이름[]; int num[]; String name[]; 위와 같이 배열을 선언할 수 있는데 변수 또는 타입에 배열을 의미하는 대괄호[]를 붙이면 된다. 하지만 대부분 타입 쪽에 붙이는 방법을 선호한다(예 : int[]) 타입[] 변수이름; 변수이름 = new 타입[]; int[] num; // 1 num = new int[3]; // 2 int[] num = new.. 2022. 12. 22. [Java] 자주 발생하는 기본적인 에러와 해결 1️⃣ cannot find symbol 또는 cannot resolve symbol 지정된 변수나 메서드를 찾을 수 없다는 뜻. 선언되지 않은 변수나 메서드를 사용하거나, 변수 또는 메서드의 이름을 잘못 사용한 경우에 발생한다. ✅ 자바에서는 대소문자 구분을 하기 때문에 철자뿐만 아니라 대소문자의 일치 여부도 꼼꼼하게 확인해야 함. 2️⃣ ';' expected 세미콜론';'이 필요한 곳에 없다는 뜻. ✅ 자바의 모든 문장의 끝에는 ';'을 붙여주어야 하는데 가끔 이를 잊고 실수하기 쉽다. 3️⃣ Exception in thread "main" java.lang.NoSuchMethodError: main 'main 메서드를 찾을 수 없다.'라는 뜻. 실제로 클래스 내에 main 메서드가 존재하지 않거나.. 2022. 12. 20. 이전 1 ··· 17 18 19 20 21 다음