1. 자료형(변수)
데이터를 저장할 수 있는 메모리
ex) 스타*스에서 커피를 주문한다면 스몰(small), 쇼트(short), 톨(tall), 그란데(grande)이 크기가 있다.
카페에서 자신의 원하는 컵의 크기를 선택하는 것처럼 변수(컵)도 데이터(음료)를 담는 그릇이다.
때문에 변수(컵)은 여러가지 크기가 존재한다.
1.1 변수의 종류
- (원시)변수: 원시변수에는 값이 저장된다. ex) int i = 7; => i는 111(2)의 값을 저장 함.
- 인스턴스 변수: 객체(인스턴스) 내부에 있는 변수
- 레퍼런스변수(레퍼런스) : C언어에서의 포인터, 객체에 접근하는 주소를 갖고 있음(값이 X)
2. 기본 자료형 (총 8개)
2.1. 리터럴
소스 코드의 고정 된 값을 대표하는 용어
ex) 진하게 표시된 것이 리터럴
int i = 100;
float f = 10f;
char ch = "Oh!";
*리터럴과 상수(Constant)는 다름!!!
- 리터럴: 변수 및 상수에 저장되는 값 자체 ex) int i = 100;
- 상수 : 값을 초기화 한 이후에 값 변경이 불가능한 상수 ex) public static final int i = 100;
2.2 종류
| 1 byte | 2 byte | 4 byte | 8 byte |
논리형 | boolean |
|
|
|
문자형 |
| char |
|
|
정수형 | byte | short | int | long |
실수형 |
|
| float | double |
* 회색 부분은 default(기본) 자료형
2.3 변수선언
[public/protected/private] [static] [final] 변수타입 변수명;
* [ ]안의 것은 때에 따라 생략가능
1) 변수이름 짓는 법
- 변수는 알파벳, 숫자, _, $ , 문자(한, 중, 일 국가 문자 다 가능)
- 단, 변수의 첫 문자는 숫자가 올 수 없다.
- 가능한 $는 변수이름으로 사용하지 말것(보통 $는 자동화 도구에서 값을 대치하는 특수기호로 많이 사용 ex)jQuery)
- 패키지 멤버 클래스는 영어 외에 문자를 사용하지 말아라.(운영체제에서 인지X), 내부 클래스는 한글 사용가능 but 영어를 쓰는 것이 현명
- 대소문자를 구분한다.
- 변수 이름 짓는 규칙: camel표기법 ex) firstName, createDate
- 널리 알려진 약어의 경우는 변수명으로 사용해도 되지만, 가능한 약어 사용을 자제하라 => source code의 가독성을 위해
- 변수는 소문자로 시작한다.
- 메서드명은 동사로 시작, 일을 시키는 식으로 이름을 지어라!
2) 사용 예
- boolean i = true; //true or false 밖에 사용 못함.
- char i = 'A';(작은 따움표로 감싸 주어야 함) // 하나의 문자만 저장 가능
- byte i = 1;
- short i =1;
- int = i =1;
- long i =1;
- float i = 1.2f;("f"를 꼭!!!! 써야함! => 자바에서는 소수점이 들어가 있는 것은 기본적으로 double로 간주 하기때문에)
* "1.2f"가 의미하는 것은?
커피를 주문할때에 "아메리카노 small사이즈, 시럽추가, 샷추가" 라고 주문을 한다고 해보자
그렇다면, 커피를 주문받는 사람은 위와같이 모든 글자를 다쓰지 않고, "사이즈:s, 시럽O, 샷O"과 같이 간결하게 나타낼 것이다.
커피에서의 "s"가 의미하는 것이 small의 크기를 갖고있는 컵을 의미하듯이,
프로그래밍에서의 "f"가 의미하는 것은 flaot의 크기를 갖고있는 변수를 의미한다.
3) Error
byte test1 = 128; //error 내용: type mismatch:cannot convert from int to byte (type이 잘못매치되었다: int는 byte로 변환할 수 없다.) |
- 128은 1바이트 이상이므로 int형이 되어야 한다!! => 1byte인 byte에 넣을 수 없다.
- 따라서, 변수의 크기와 할당 내용의 크기를 맞춰서 변수 선언을 하여라!!
3. 참조 자료형
객체의 주소를 저장, 변수의 타입이 클래스의 이름을 사용
2.1 종류
- String : 문자열 사용 시
- 사용자 지정 클래스
2.2 사용방법
String str = "Hello, World!"; (변수타입 첫글자 => 대문자, 큰따움표로 감싸줌)
4. 기본 자료형 VS 참조 자료형
| 기본 자료형 | 참조 자료형 |
저장 하는 값 | 실제 값 | 객체의 주소 |
크기제한 | 有 | 無 |
변수타입 첫 글자 | 소문자 | 대문자 (클래스 이므로) |
사용예시 | int a = 100; | Date today = new Date(); |
'개발 > Java' 카테고리의 다른 글
[JAVA] "인스턴스변수VS 메소드"와 "클래스 VS 객체" (0) | 2016.12.31 |
---|---|
[JAVA] 기초03 (0) | 2016.12.31 |
[JAVA] 기초 - 주석 (0) | 2016.12.31 |
[JAVA] 기초02 (0) | 2016.12.31 |
[JAVA] 기초01 - JAVA란? (0) | 2016.12.31 |