자바 기본 특징
대소문자를 구분한다.
Java KeyWord : 예약어로 식별자에 이름을 붙이지 못한다. 이클립스에서는 자주색으로 바뀜
클래스 작성시 관습적으로 지켜지는 식별자를 명명하는 방법이 정해져잇다 보통 약속이기 때문에 많이 따르는데
- class 이름은 첫글자를 대문자로 시작하고, 나머지 글자를 소문자로 명명한다.
- method 이름은 모두 소문자로 한다.
- variable 이름도 모두 소문자로 한다.
- constant 이름은 모두 대문자로 한다.
기본형:기본적(일반적)인 값을 기억하는 변수의 type
숫자
- 정수형:byte(1), short(2), int(4), long(8),char(2)
- 실수형:float(4), double(8)
논리:boolean (참,거짓)
보통 프로그래밍 할때는 int, double 많이 쓴다.
char:글자한개 저장이 목표
참조형
class, interface, array, enum...
java는 선언과 동시에 각 타입에 맞는 default 값이 들어간다.
배열의 경우에는 각 배열이 0으로 채워지고 boolean은 false 값이 들어가있다.
형변환(Casting)
byte < short < int < long < float< double (*float가 long 보다 저장하는 범위가 많아서 크다.
큰 변수에 작은 변수를 넣는건 자동으로 형 변환이 된다, 또 정수형은 실수형으로 자동형변환 된다,
ex)
long var =100;
flat fvar = var;
int kvar ='A'; (O) //이럼 'A' 글자의 아스키 코드 (65) int 타입으로 출력된다.
작은 변수형에 큰 변수형을 넣는건 불가능하다, 또 실수형이 정수형으로 타입을 변경할 경우에는 형변환이 필요하다.
float favr =100;
long var=(long)favr;
작은 변수(long)에 큰 변수형(float)를 넣을 경우에 형변환을 해주어야한다.
그래서 형변환을 해주던가 아예 변수 선언을 다시해준다.
ex)
byte b =120;
b=b+1;
Type mismatch 오류가 난다.
이유는
자바에서 정수리터럴을 사용해서 연살할때 그 값은 4byte에 저장된다.
1은 4byte에 저장이 되는 정수리터럴이고 b는 1바이트만 사용하는 변수인데 이를 1바이트에 저장하니까 오류가 난다
이런 식으로 int 타입으로 크게 바꿔주거나
계산 결과 값을 다시 byte 타입으로 형변환 시켜준다.
보통 이런 상황을 피하고자 int, double 타입을 많이 사용한다.
결과값:
20.30
100.100
3.1415925.3.1415924168 //float 형보다 double 형이 더 많이 나온다
A.AB
66.B // int 형 k 를 char로 형변환 시켜줘서 66의 아스키 값인 B가 나온다.
true.false
'JAVA > JAVA 기본 문법' 카테고리의 다른 글
[JAVA]-Java 1차원 배열 (0) | 2019.01.19 |
---|---|
[JAVA]-Java 반복문 (0) | 2019.01.19 |
[JAVA]-Java 조건문 (0) | 2019.01.19 |
[JAVA]-Java 연산자 (0) | 2019.01.19 |
[JAVA]-java 특징, 설치, 이클립스 단축기 소개 (0) | 2019.01.19 |