자바 정리
자바의 특징
- WORA(Write Once Run Anywhere): JVM으로 인해 가능. 운영체제에 종속적이지 않음
- 메모리 자동 정리: GC(Garbage Collection)
- 객체지향의 특징: 추상화, 다형성, 상속, 캡슐화
- Abstraction, Polymorphism, Inheritance, Encapsulation
- 변수: 메모리 공간. 값을 할당해서 사용하고, 크기는 타입별로 달라짐
- local: 스택
- static: 스태틱
- instance: 힙
- 데이터의 종류
- 기본형: 미리 정해진 크기를 가짐. 변수 자체에 값을 저장함. 8가지 종류
- 참조형: 크기를 모름. 주소를 저장. 기본형 제외 모든 타입
- 기본형의 최상위 비트: Sign bit
- 아주 큰 값: BigInteger 사용
- 문자형: 아스키와 유니코드로 구성
- 실수 계산 시 정확도 조심
- 형 변환: 변수의 타입을 다른 타입으로 변환
- 기본형과 참조형 변환: Wrapper
- 묵시적
- 명시적
- 연산자: 기본은 int와 double
- >>: 부호 비트와 동일한 비트로 채움
- >>>: 무조건 0으로 채움
- 배열: 동일 타입 데이터를 보관. 연속된 메모리 공간으로, 빠른 접근. 한번 생성 시 크기 변경 불가
- 배열의 쉬운 출력: Arrays.toString() 이용
- 배열은 참조형이다.
- 다차원 배열 조심
- int[][]는 int[]의 배열이다.
- Random 수 구현
- Math.random()
- new Random(); / random.nextInt(N)
- 배열 복사: System.arraycopy(), Arrays.copyOf()