자바의 특징
- JVM을 통하여 운영체제에게서 자유롭다.
- Garbage Collection이 더 이상 사용되지 않는 heap 메모리를 자동으로 정리한다 .
- 객체지향의 특징 4가지를 가진다.
- Abstraction
- Polymorphism
- Inheritance
- Encapsulation
데이터 타입
Primitive Type
- 미리 정해진 크기의 Memory size
- 변수 자체에 값을 저장
문자형은 내부적으로 ascii와 unocode로 지정된 값을 사용한다
ex)
문자 | 10진수 | 2진수 |
---|
'0' | 48 | 0110000 |
'A' | 65 | 1000001 |
'a' | 97 | 1100001 |
Reference Type
- 크기가 미리 정해질 수 없는 데이터의 표현
- 변수에는 실제 값을 참조할 수 있는 주소를 저장
형변환
- 변수의 타입을 다른 타입으로 변환하는 것
- primitive는 primitive끼리, reference는 reference끼리 형 변환 가능
- boolean은 다른 기본 타입과 호환되지 않음
- 기본 타입과 참조형의 형변환을 위해서 Wrapper 클래스 사용
- 타입의 표현 범위가 작은것에서 큰것으로 옮길 때에는 묵시적 형변환
- 묵시적 형변환은 자료의 손실 걱정이 없으므로 JVM이 해줌
- 타입의 표현 범위가 큰것에서 작은것으로 옮길 때에는 명시적 형변환
- 명시적 형변환은 값 손실이 발생할 수 있음
float f =0;
double d = i;
float f2 = (float)d;
비트 연산자