[자바의정석]Java - 변수,상수와 리터럴 #001

변수
변수란?
변수의 선언이유
변수의 선언방법
변수에 값 저장하기
변수의 초기화
- 변수에 처음으로 값을 저장하는 것
- 모든 변수는 사용하기전 적절한 값으로 초기화 해주는 것이 좋다
변수의 종류
- 클래스 변수
- 인스턴스 변수
- 지역 변수 (0으로 자동초기화 x 꼭 초기화해줘야 한다)
변수의 타입
- 변수의 타입은 저장할 값의 타입에 의해 결정된다
- 저장할 값의 타입과 일치하는 타입으로 변수를 선헌해준다
값의 타입(기본형)
- 문자 (char)
- 정수 (byte,short,int,long)
- 실수 (float,double)
- 논리 (boolean)
상수와 리터럴
상수
- 한 번만 값을 저장 가능한 변수
- final 을 붙여서 사용가능하다
- ex) final int num = 1; 이제 num은 1로 고정이다.
리터럴
- 그 자체로 값을 의미하는 것
- data 를 의미한다
- ex) 100,200 ,가,다,글씨
리터럴의 접두사와 접미사
- 종류-논리형,정수형,실수형,문자형,문자열
- 논리형 false,true
- 정수형 123, 0b0101,0xFF, 100L / 접미사=L
- 실수형 3.14, 5.222, 1.4f, 3,0e8 / 접미사=f,d
- 문자형 '문자'
- 문자열 "문자열"
기본형과 참조형
기본형(Primive type)
- 오직 8개 (boolean, char, byte, long, short, double, int, float)
- 실제 값을 저장
참조형(Reference type)
- 기본형을 제외한 나머지 (String, System 등등)
- 메모리 주소를 저장한다(4byte 또는 8byte)
- 참조형 변수는 객체의 주소를 저장
1byte = 8bit
종류\크기(byte) | 1 | 2 | 4 | 8 |
---|
논리형 | boolean | | | |
문자형 | | char | | |
정수형 | byte | short | int | long |
실수형 | | | float | double |
기본형의 표현범위
- n비트로 표현할 수 있는 값의 개수 : 2n 개
- n비트로 표현할 수 부호없는 정수의 범위 : 0 ~ (2n−1)
- n비트로 표현할 수 부호있는 정수의 범위 : −2n−1 ~ 2n−1−1
- ex) 2byte = 16bit = 216 = 65536
오버플로우
- 표현 가능한 범위를 넘는 것
- 최대값 + 1 -> 최소값
- 최소값 - 1 -> 최대값
타입간의 변환방법
- 문자와 숫자간의 변환 (숫자에 문자를 더해준다 +'0' 문자에서 숫자는 -'0')
- 문자열로의 변환 ("" 빈문자열을 더해준다)
- 문자열을 숫자로 변환 ( Interger.parseInt("3") 사용해준다 )

자동 형변환
- float f = 1234; //int 타입의 값을 float타입의 변수에 저장 , float타입이 더커서 가능. 컴파일러에서 자동으로 변환해줌
- 원래는 float f = (float)1234; 이렇게 양쪽 타입이 일치해야된다
- int i = 3.14f // 에러. int형이 float 보다 작기때문이다