KH 3일차
2일차까지 CMD에서 javac로 컴파일하고, java로 컴파일된 결과값을 출력했다면
3일차에서는 새로운 Tool을 다운로드했다. EditPlus Tool을 다운로드해서 사용했는데, EditPlus는 컴파일을 조금 더 편리하게 사용할 수 있게 도움을 주는 Tool이라고 보면된다.



이렇게 기본 설정을 성공적으로 하면 CTRL + 1, 2, 3 키에 자동적으로 배치되어 쉽게 사용할 수 있다.
이제 본격적으로 Tool을 사용해서 Java의 기본 개념을 파헤쳐보는 시간을 갖기로 했다.
먼저 자바의 식별자에 대해서 공부하고, 식별자의 작성 규칙에 대해 배웠다.
- 식별자(Identifier)
: 자바에서 식별자는 클래스, 인터페이스, 변수, 메소드, 배열, 문자열 등을 구분할 수 있는 이름입니다.
이름은 다른 것과 구별해야 하기 때문에 중복되지 않는 것을 사용해야 합니다.
식별자는 길이의 제한이 없고 유니코드 문자를 사용해야 하기 때문에 한글도 사용할수 있습니다.
대, 소문자를 구분하여 사용하며, 식별자를 만드는 몇가지 관례가 있습니다.식별자 작성 규칙 - 식별자 작성 규칙
- 유니코드 문자를 사용한다.
- 공백이 없는 한개의 단어로 구성되어야 합니다.
- 문자, 숫자, '_', '$' 를 사용할수 있습니다.
- 반드시 문자, '_', '$' 로 시작하여야 합니다.
- 길이 제한이 없습니다.
- 대, 소문자를 구분합니다.
- 키워드를 사용할수 없습니다.
- Keyword : 키워드는 자바에서 미리 예약해 놓은 단어를 의미합니다.
그래서 키워드를 Reserved Wod(예약어) 라고 부릅니다.
특정한 단어를 미리 예약하여 특별한 용도로 사용하기 위함입니다.
자바의 키워드는 모두 **소문자** 입니다.
기본 자료형 : void, boolean, byte, char, short, int, long, float, double
변수 유형지정 : transient, volatile
제어문 : if, else, switch, case, for, while, do, break, continue, return, default
클래스 : class, interface, abstract, final, extends, implements, this, super, new, instanceof, static
접근 수정자 : public, protected, private
예외처리 : try catch, finally, throw, throws
패키지 : import, package
상수: null, true, false
메소드 유형 : native, synchronized
사용되지 않는 키워드 : const,goto
- 변수와 상수 : 컴퓨터에서 처리하는 값이 변하기 위해서는 그 값을 보관하기
위한 메모리 공간이 필요합니다. 변수는 메모리의 특정한 기억공간을 사용합니다.
그러기 위해서는 메모리의 특정한 위치에 자료를 기억할수 있는 공간을 확보하고 그 공간에 이름을 부여한 것이 변수 입니다.
- 변수는 이름을 갖습니다.
- 변수는 값을 갖습니다.
- 변수에 있는 값을 수정할수 있습니다.
- 변수는 메모리에 위치합니다.
Primitive Type(기본형)
: 기본형으로 사용되는 자료형은 8가지가 있습니다.
자료형 키워드 내용 표현범위 크기 초기값
문자형 char 2byte유니코드를처리 '\u0000uffff' 2byte '\u0000'
논리형 boolean true, false 처리 true, false 1byte false
정수형 byte 1byte 정수처리 -128~127 1byte (-2*7~2*7-1) 0
정수형 short 2byte 정수처리 -32768~32767 2byte (-2*15~2*15-1) 0
정수형 int 4byte 정수처리 -2147483648~2147483647 4byte 0
정수형 long 8byte 정수처리 (-2*63~2*63-1) 8byte 0
실수형 float 4byte 실수처리(부동 소숫점 처리) 4byte 0.0
실수형 double 8byte 실수처리(부동 소숫점처리) 8byte 0.0

float형에 변수 ff2와 ff를 생성하고 초기화 했다. ff2와 ff에 각각 1.07878666의 값과 1.01234534901234567890f; 값을 대입했을 때 float는 소수점 이하 6자리까지 알 수 있고 double은 소수점 이하 15자리까지 알 수 있다.
여기서 중요한것은 실수는 오차를 가지고 있다는 것이다.

유니코드의 형식, Ascii Code형식, 문자형식으로 char 형태의 변수 ch1, ch2, ch3을 초기화 할 수 있다.

' ' 속에 있는 ' 을 표시하고 싶으면 앞에 \을 붙혀서 표기하면 된다.
' ' 속에 있는 \ 을 표시하고 싶어도 앞에 \을 붙혀서 표기하면된다.

마찬가지로 " " 속에 있는 " 를 표시하고 싶으면 앞에 \를 표기하면된다.

byte(1byte), short(2byte), int(4byte), long(8byte)에 각각 10진수, 8진수, 16진수, Long타입의 방식으로 초기화하는 방법이다. 077같은 경우에는 8진수로 표현되어 있고 10진수로 표현하면 8^0*7 + 8^1*7 이므로 7 + 56 = 63이다. 000111111값에서 -1의값인 즉 001000000(64)에서 1작은 63(10진수)이라고 표현할수 있고 8진수의 값중에서는 제일큰값 77 10진수에서의 99값과 같다. 16진수의 0xff;는 0000 0000 1111 1111 의 값이므로 0000 0001 0000 0000 의 값보다 1 작은 즉 255의 값을 뜻하는 것이므로
bb에는 10 ss는 63 ii는 255 ll에는 10의 값이 초기화 될 것이다!