Java Day 2 변수와 자료형
07 Dec 2020 | JavaJAVA Day 2 변수와 자료형
-
식별자
- 식별자란?
- 구성요소를 구별하는 이름
- 클래스명, 매서드명, 변수명과 같이 서로를 구별하는 이름
- 식별자명을 정의하는 규칙
- 첫 글자로 공백, 특수문자, 숫자 사용 X
- ‘_’, ‘$’ 는 사용 할 수 있으나 라이브러리와 겹쳐서 오류를 발생 할 수 있으므로 자제
- 예약어 사용 X
- 한글 사용 가능하나 쓰지말자
- 영어 대소문자 구별한다
- 클래스명을 정의하는 규칙
- 첫 글자는 항상 대문자로
- Camel 규칙에 의거해서 작성
- 클래스명은 반드시 파일명과 같아야한다
- 식별자란?
-
주석
- // : 단행 주석처리, 해당 행만
- /* */ : 다행 주석 처리, 범위 주석
- /** */ : javadoc 주석처리, API document 생성시 사용
- Cleancode를 위해 주석을 많이 활용하자 !
-
변수
- 변수란?
- 하나의 값을 저장 할 수 있는 메모리 공간
- 변수의 선언
int age; // 정수를 저장 할 수 있는 age 변수 선언 age = 30; // 변수의 초기화 int age = 30; // 선언과 초기화 동시에 가능 //초기화 되지 않은 변수는 사용 할 수 없다 int value; int result = value + 10; // 선언만 되고 초기화 되지 않아서 compile error 발생 //변수의 값은 바뀔 수 있다 int age = 30; age = 19; // 가장 마지막에 저장된 값이 변수의 값이 됨 //변수의 범위 int a = 10; // 전역변수, 다른 곳에서 사용 가능 if() { int b = 10; //if블록 안에서 생성됨, 지역변수로 블록 밖에서 사용 X } //초기화시 자료의 표현범위를 넘을 수 없다 byte b = 127; //byte의 범위는 -128~127 b++; System.out.println(b); // -128 출력, 윤회사상으로 127의 다음 수인 -128로 돌아감
-
기본 자료형
-
논리형 : boolean, 1byte, (true, false)
-
정수형
-
byte : 1byte, -128~127 (색상 정보, 이미지,파일의 이진 데이터 처리시 사용)
-
char : 2byte, 0~65535 (유니코드 문자 표기), 문자형으로 분류하기도
char ch = ' '; //''와 같이 빈 문자를 대입하면 compile error 발생 String str = ""; //String은 빈 문자로 초기화 할 수 있다. char ch1 = 'A'; //아스키코드값 65 char ch2 = '\u0041'; //A의 유니코드 System.out.println(ch1+ch2); //AA 출력 System.out.println((ch1+ch2)); //130 출력, 문자는 연산이 가능하면 연산을 수행함 System.out.println((char)(ch1+ch2)); // z 출력, 해당 값의 문자 출력
-
short : 2byte, -32,768~32,767 (C언어와의 호환을 위해 사용)
-
int : 4byte, 대략 -21억4천만~21억4천만, 정수형의 기본 자료형
-
long : 8byte, -2^63~2^63-1 (은행, 우주 등 수치가 큰 데이터 처리시 사용)
long A = 1111L; //long타입의 변수는 초기화시 l or L을 붙여야함
-
-
실수형
-
float : 4yte, -3.4E38 ~ 3.4E38
float f = 3.14f; //float타입의 변수는 초기화시 f or F를 붙여야함
-
double : 8byte, -1.7E308 ~ 1.7E308, 실수형의 기본 자료형
-
-
-
참조 자료형
- 기본 자료형을 제외한 모든 타입으로 Stirng도 포함
- new 연산자를 이용하여 메모리 할당
- 클래스 기반 타입
-
Wrapper Class
-
기본 자료형을 객체로 다루기 위해 사용하는 클래스
-
기본자료형의 첫글자를 대문자로 변환 (Integer, Character 예외)
Integer num = 15; //Auto Boxing int num2 = num; //Auto Unboxing
-
-
형변환
-
프로모션 : 더 큰 자료형으로 변환(자동)
short a = 10; short b = 10; int c = a + b; // 자동 타입 변환이 일어남
-
디모션 : 작은 자료형으로 변환(명시)
int intValue = 1234; byte byteValue = (byte)intValue; //-46출력, 강제 타입변환을 캐스팅이라 한다, 쓰레기값이 나오지 않도록 주의
-
- 변수란?