-
[Java] 자바 기초 다지기!Java 2022. 12. 14. 23:38
최근에 프론트(Vue.js)만 하다가 다시 API를 개발하게 되었는데.. 보는 것마다 새롭고 내가 자바를 너무 모르고 있다는 것을 깨달았다. 그래서 꾸준히 자바의 정석 책을 보면서 기초를 확실하게 다지고자 한다.
자바 Primitive type memory
리터럴
리터럴은 그 자체로 값을 의미하는 것.
int year = 2022; // year : 변수 // 2022 : 리터럴 final int MAX_VALUE = 100; // MAX_VALUE : 상수 // 100 : 리터럴
인코딩과 디코딩
문자 'A'를 유니코드로 인코딩하면 65 반대로
65를 유니코드로 디코딩하면 문자 'A'
- 문자를 코드로 변환하는 것 문자 인코딩
- 코드를 문자로 변환하는 것 문자 디코딩
아스키 (ASCII)
- American Standard Code for Information Interchange : 정보 교환을 위한 미국 표준 코드
- 아스키는 128개(=2^7)의 문자 집합을 제공하는 7bit 부호로 기호와 숫자 영대소문자로 이루어져 있다.
확장 아스키
- 일반적으로 데이터는 byte 단위로 다뤄지는데 아스키는 7bit이므로 1bit가 남는다. 이 남은 공간을 활용해서 문자를 추가로 정의한 것이 확장 아스키이다.
- 확장 아스키의 표준은 여러 가지가 있는데, 그 중에서 대표적인 것이 ISO 8859-1 이다.
유니코드
- 전 세계의 모든 문자를 하나의 통일된 문자집합으로 표현한 결과가 바로 유니코드이다.
- 초기 2byte(16bit)에서 21bit로 확장됐다.
- 유니코드 인코딩에는 UTF-8, UTF-16, UTF-32 등 여러 가지 종류가 있는데 자바에서는 UTF-16을 사용한다.
- UTF-16은 모든 문자를 2byte의 고정 크기로 표현하고 UTF-8은 하나의 문자를 1~4byte의 가변크기로 표현한다.
지속적으로 업데이트 예정..
로그
- 최초 작성 / 22.12.14
- 리터럴 추가 / 22.12.16
- 인코딩과 디코딩, 아스키, 확장 아스키, 유니코드 추가 / 22.12.18
'Java' 카테고리의 다른 글
[JPA] JPA 꿀팁 저장소 (2) 2022.12.19 [JPA] Entity가 Serializable를 구현하는 이유 (0) 2022.12.19 [JPA] JpaRepository, CrudRepository에 @Repository 없어도 되는 이유 (0) 2022.12.05 [자바/Java] val & var (0) 2022.11.21 [자바/Java] 자바 메모리 구조 알아보기 (0) 2021.08.08