Java 특징 장점 OS와는 독립적으로 실행할 수 있다. 자동 메모리 관리를 지원하여 안정성이 높다. Operator overloading을 금지하고 Generic를 도입하여 코드의 가독성이 높다. 단점 JVM을 거쳐야 하므로 실행 속도가 느리다. 다른 언어에 비해 작성 코드가 긴 편이다. Java 프로그램 실행 과정 Java Compiler Java...
변수 데이터를 저장하기 위한 메모리 공간에 이름을 붙인 것이다. 명명 규칙 변수뿐만 아니라 클래스, 메소드 등의 이름을 지을 때 공통적으로 적용되는 규칙은 다음과 같다. 영문자, 숫자, '_', '$' 로만 구성할 수 있다. 숫자로 시작할 수 없다. 이름 사이에는 공백을 포함할 수 없다. reserved keyword는 사용할 수 없다. 변수의 종류 ...
Primitive Type 종류 정수형 타입: byte, short, int, long 실수형 타입: float, double 문자형 타입: char 논리형 타입: boolean 정수형 타입 각 타입의 메모리 크기는 다음과 같다. byte: 1 byte short: 2 byte int: 4 byte long: 8 byte 메모리 크기에 따라 표현할 수...
Implicit Conversion 묵시적(자동) 타입 변환으로 연산에서 컴파일러가 자동으로 수행하는 타입 변환을 말한다. Java에서는 데이터 손실이 발생하지 않거나, 최소화되는 방향으로 implicit conversion을 한다. 따라서 다음과 같은 방향으로 변환이 이루어진다. 또한, 데이터 손실이 발생하는 대입 연산은 허용되지 않는다. 더 넓은 ...
메모리 구조 자바 프로그램이 실행되면, JVM은 해당 OS로부터 프로그램을 실행하기 위한 메모리를 할당받는다. JVM은 할당된 메모리를 용도에 따라 다음과 같이 구분하여 관리한다. 메소드(method) 영역 프로그램에서 사용되는 클래스에 대한 정보와 클래스 변수(static variable)가 저장되는 영역이다. JVM은 프로그램에서 특정 클래스가 사...
1차원 배열 선언 두가지 방법이 있다. **1. 타입[] 배열이름; 타입 배열이름[]; ** 되도록 첫번째 방법을 사용할 것을 권장한다. 초기화 배열을 초기화할 시 배열의 길이를 명시해야 한다. 타입[] 배열이름 = new 타입[배열길이]; 인덱스를 통해 접근하여 값을 설정하거나 사용하는 것이 가능하며, 각 인덱스의 값을 따로 초기화하지 않아도 타입...