c언어로 프로그램을 짰을 당시에는 c언어의 포인터로 메모리를 자주 핸들링하였기 때문에 시스템이 자주 다운되는 일이 잦았다고합니다. (안정성 불안)
그러면서 좀더 안정성이 높은 언어가 뭐가 있을까하다가 생겨난 언어가 자바언어입니다.
자바언어는 굉장히 안정성이 높은 언어로, 기존에 c언어가 가지고 있는 여러가지 모음이라던가 불안정적인 요소들을 없애면서 시스템을 다운시키는 일이 없어졌습니다.
특징으로는 플랫폼(=운영체제)에 영향을 받지 않아 다양한 환경에서 사용할 수 있습니다.
변수 이름은 영문자(소문자,대문자)나 숫자로 사용할 수 있고, 특수문자 중에는 $와 _만 사용 ex) count100,_master
변수 이름의 시작은 숫자로 할수 없음 ex) 27days, 1abc (x)
자바에서 이미 사용하고 있는 예약어는 사용할 수 없음( while, break 등)
변수이름은 프로그램 내에서 사용되는 것이므로 그 용도에 맞고 가독성이 좋게 만드는 것이 중요
어떤 문자를 컴퓨터 내부에서 표현하기 위해 특정 정수 값을 정의하는데 다른말로 인코딩이라고 부릅니다.
ex) A를 인코딩하여 65로 변환하였다. (<>인코딩의 반대는 디코딩)
문자세트 : 각 문자를 얼마로 표현할 것인지 코드값을 모아둔 것을 문자세트라고합니다.
ex) ASKII,euc-kr,utf-8.utf-16
문자를 위한 데이터 타입 char ch='A';
'A'와 "A" 는 전혀 다르므로 구분하자.
'A'는 2byte크기를가진 문자이고, "A"는 문자열이다.
내부적으로 숫자로 표현되므로 숫자를 넣어도 문자가 출력될 수 있다.
다만, 음수는 쓸수없고 양수만 쓸수있다.
char ch2=66;
character set: 문자를 숫자로 변환한 값의 세트
encoding: 문자가 숫자로 변환되는 것
decoding: 숫자가 문자로 변환되는 것
ASKII code: 알파벳과 숫자, 특수 문자 등을 1바이트에 표현하는데 사용하는 문자세트
UNICODE: 전 세계 표준으로 만든 문자세트
UTF-8: 1바이트에서 4바이트까지 다양하게 문자를 표현할 수 있음
UTF-16: 2바이트로 문자를 표현
1) 문자열은 문자+null문자(\0). 아스키코드에 null문자 나와있습니다.
예를 들어,
char c[2] = {'A', '\0'} 일 경우, c는 문자열입니다. 2바이트를 소모하며,
string cc = "A" 와 같이 표현 할 수도 있겠지요.
2) 다만, 음수는 쓸수없고 양수만 쓸수있다. => 문자로 쓰이는 정수는 양수만 사용.