의견.png

"자료형"의 두 판 사이의 차이

해시넷
이동: 둘러보기, 검색
(참조 자료형)
217번째 줄: 217번째 줄:
 
참조 자료형((Reference DataType)은 주소를 가지고 있는 변수 즉, 선언된 변수에 값이 아닌 인스턴스에 대한 주소값이 저장된다. <ref name="퍼그의 전초기지"></ref> <ref name="나는연어다"></ref> Java API에서 제공되거나 프로그래머에 의해 만들어진 클래스를 자료형으로 선언하는 경우라고 할 수 있다. <ref name="Code Dragon"> 〈[https://codedragon.tistory.com/6271 참조 자료형(reference data type), 참조 자료형 종류]〉, 《개인블로그》</ref> 또한 참조 자료형의 종류들은 new 키워드를 이용하여 객체를 만들어야만 실제로 메모리가 할당되고 그 공간을 사용할 수 있다. <ref name="niee"> 〈[https://niees.tistory.com/7 자바 기초_3 참조 자료형 이해하기]〉, 《개인블로그》, 2015-08-06</ref> 하지만 String과 배열은 new 키워드 없이 객체를 생성할 수 있지만 참조 자료형에 속한다. <ref name="Dog발자Tech"> 〈[https://jktech.tistory.com/14 Java 참조 자료형(클래스, 인터페이스, 배열, 열거 타입)]〉, 《개인블로그》, 2020-05-23</ref>
 
참조 자료형((Reference DataType)은 주소를 가지고 있는 변수 즉, 선언된 변수에 값이 아닌 인스턴스에 대한 주소값이 저장된다. <ref name="퍼그의 전초기지"></ref> <ref name="나는연어다"></ref> Java API에서 제공되거나 프로그래머에 의해 만들어진 클래스를 자료형으로 선언하는 경우라고 할 수 있다. <ref name="Code Dragon"> 〈[https://codedragon.tistory.com/6271 참조 자료형(reference data type), 참조 자료형 종류]〉, 《개인블로그》</ref> 또한 참조 자료형의 종류들은 new 키워드를 이용하여 객체를 만들어야만 실제로 메모리가 할당되고 그 공간을 사용할 수 있다. <ref name="niee"> 〈[https://niees.tistory.com/7 자바 기초_3 참조 자료형 이해하기]〉, 《개인블로그》, 2015-08-06</ref> 하지만 String과 배열은 new 키워드 없이 객체를 생성할 수 있지만 참조 자료형에 속한다. <ref name="Dog발자Tech"> 〈[https://jktech.tistory.com/14 Java 참조 자료형(클래스, 인터페이스, 배열, 열거 타입)]〉, 《개인블로그》, 2020-05-23</ref>
  
===== 1. 클래스 =====
+
===== 클래스 =====
 
*'''정의'''
 
*'''정의'''
 
클래스(Class)는 클래스 자료형 객체가 갖는 참조값을 가지고 있다. 보통 String은 new 키워드 없이 기본 자료형처럼 사용해서 값이 저장되어 있다고 생각할 수 있지만, 이는 참조 자료형이기 때문에 값이 아닌 주소를 갖고 있다. <ref name="Dog발자Tech"></ref><ref name="Code Dragon"></ref>
 
클래스(Class)는 클래스 자료형 객체가 갖는 참조값을 가지고 있다. 보통 String은 new 키워드 없이 기본 자료형처럼 사용해서 값이 저장되어 있다고 생각할 수 있지만, 이는 참조 자료형이기 때문에 값이 아닌 주소를 갖고 있다. <ref name="Dog발자Tech"></ref><ref name="Code Dragon"></ref>
 
*'''종류'''
 
  
 
*'''표현 방법'''
 
*'''표현 방법'''
  
===== 2. 인터페이스 =====
+
===== 인터페이스 =====
 
*'''정의'''
 
*'''정의'''
 
*'''종류'''
 
  
 
*'''표현 방법'''
 
*'''표현 방법'''
  
===== 3. 배열 =====
+
===== 배열 =====
 
*'''정의'''
 
*'''정의'''
 
*'''종류'''
 
  
 
*'''표현 방법'''
 
*'''표현 방법'''

2020년 8월 7일 (금) 17:56 판

자료형(資料形)이란 데이터 타입(Data Type)으로도 불리는데, 이는 프로그래밍 언어에서 여러 종류의 데이터를 식별하는 분류로써, 해당 자료형에 대한 가능한 값, 해당 자료형에서 수행을 마칠 수 있는 명령들, 데이터의 의미, 해당 자료형의 값을 저장하는 방식을 결정한다. [1]

개요

자료형에는 불린(Boolean), 정수(int), 문자(char), 문자열(String), 부동소수점(Floating Point) 등이 있다. 자료형이 정해지지 않은 경우 void를 사용한다.

특징

분류

자바 자료형의 분류[2]

기본 자료형

기본 자료형(Primitive DataType)은 값을 가지고 있는 변수 즉, 선언된 변수에 실제 값이 저장된다. [2] [3] Java 언어에서 제공하는 기본 자료형에는 하나의 문자를 표현하는 char, 표현 범위에 따라 정수를 표현하는 byte,short, int, long, 표현 범위와 오차 범위에 따라 실수를 표현하는 float, double을 제공한다. [4]

1. 문자형
  • 정의

문자형은 문자를 저장하기 위한 변수를 선언할 때 사용되며, char 타입은 하나의 문자만 저장할 수 있다. char 타입을 표현할 수 있는 방법은 문자, ASCII코드, 특수문자(유니코드 포함)으로 3가지 방법이 있다. 가장 쉽게 사용할 수 있는 방법은 한 문자로 표현하는 것이다. [5]

  • 종류

① char : char은 java의 자료형 중에서 유일하게 unsigned인 값의 범위 중에서 음수가 없는 자료형이다. 유니코드를 도입하여 2byte의 범위로 이뤄져 있다. [6]

< 문자형 > [4]
예약어 메모리 크기 디폴트 값 표현 범위
char 2 byte '\0' 0 ~ 65535
  • 표현 방법[5]

1) 한 문자로 표현 : 작은 따옴표 사이에 출력할 한 문자를 넣는다.

char x = 'y';
System.out.println(x);
[ 출력값 ] 
>> y

2) ASCII코드로 표현 : ASCII코드에 해당하는 10진수 숫자로 표현한다.

char x = 65;
System.out.println(x);
[ 출력값 ]
>> A
ASCII 코드표[5]

3) 특수문자로 표현 : 백슬러시(\) 다음에 특수 기호를 붙여서 표현한다.

System.out.println("\"Java\"");
[ 출력값 ]
>> "Java"
< 특수 문자 > [5]
특수문자 문자 표현법
tab \t
backspace \b
form feed \f
new line \n
carriage return \r
역슬래시(\) \\
작은 따옴표(') \'
큰 따옴표(") \"
유니코드(16진수) \u유니코드
2. 숫자형
1) 정수형
  • 정의

정수형은 Java 언어에서는 정수를 표현하기 위해 byte, short, int, long을 제공한다. [4]

① byte : byte는 정수형 자료 중 가장 작은 범위의 수치를 저장하는 자료형이다. 주로 배열이나 데이터 전송을 위해 많이 사용되는데 Java에서는 반드시 byte의 범위인 -128 ~ 127 사이의 수만 사용해야 한다.

② short : short는 C언어와 같이 2byte 메모리 체계의 int 자료형과 호환성을 위해 많이 사용하는 자료형이다. 일반적으로는 사용될 수 있지만 정수형 자료형으로는 잘 사용되지 않는 자료형이다.

③ int : int는 정수형 자료형 중에서 대표적인 자료형이다. 모든 언어에서 기본이 되는 자료형으로써, 모든 정수 수치의 기본 구조가 된다. 또한 정수 연산시에 발생하는 결과값은 모두 int형으로 출력된다.

④ long : long은 int보다 큰 정수형 데이터를 저장하기 위한 목적으로 만들어진 자료형이다. long을 초기화 할 경우에 현재 시스템에 int보다는 크다는 사실을 인식시키기 위해 소문자 'l'이나 대문자 'L'을 붙여야한다.

< 정수형 > [4]
예약어 메모리 크기 디폴트 값 표현 범위
byte 1 byte 0 -128 ~ 127
short 2 byte 0 -32768 ~ 32767
int 4 byte 0 -2의 31승 ~ 2의 31승
long 8 byte 0 -2의 63승 ~ 2의 63승
  • 표현 방법[7]

1) 따옴표는 사용하지않는다. 정수형 자료형이기 때문에 실수값을 대입하면 오류가 발생한다.

EX) 정수형 자료형 중 int 타입
int x = 10;
int y = 7.18;
System.out.println(x);
System.out.println(y);
[ 출력값 ] 
>> 10
>> int 타입은 정수형 자료형이기 때문에 실수값을 변수에 대입했을땐 오류가 발생한다.
2) 실수형
  • 정의

실수형은 Java 언어에서는 실수를 표현하기 위해 float, double을 제공한다. [4]

① float : float은 4byte 범위를 나타낼 수 있지만 정수형보다는 훨씬 많은 범위를 포함하고 있다. 정수는 0, 1, 2 ... 순이지만 실수는 0, 0.1, 0.01 ... 순이기 때문이다.

② double : double은 실수형의 기본 자료형으로 8byte 범위를 나타낼 수 있다. 가장 큰 자료형으로 원하는 만큼의 수를 지정하여 사용할 수 있는 자료형이다.

< 실수형 > [4]
예약어 메모리 크기 디폴트 값 표현 범위
float 4 byte 0.0 -3.4E38 ~ 3.4E38
double 8 byte 0.0 -1.7E308 ~ 1.7E308
  • 표현 방법 [7]

1) 따옴표는 사용하지않는다. 실수형 자료형이기 때문에 정수값을 대입해도 오류가 발생하지않는다.

EX) 정수형 자료형 중 double 타입
double x = 10;
double y = 7.18;
System.out.println(x);
System.out.println(y);
[ 출력값 ] 
>> 10.0 // 정수값은 실수값에 포함이기 때문에 오류없이 출력된다.
>> 7.18
3. 논리형
  • 정의

논리형은 Java 언어에서는 참과 거짓을 표현하기 위해 boolean을 제공한다. 주로 제어문이나 반복문의 조건식에서 사용된다. [4]

  • 종류

① boolean : boolean은 논리형식인 참과 거짓으로 표현되는 자료를 저장하고, 작은 따옴표나 큰 따옴표는 true/false에 사용해서는 안된다. [6]

< 문자형 > [4]
예약어 메모리 크기 디폴트 값 표현 범위
boolean 1 bit false true or false
  • 표현 방법

1) 변수값은 true나 false로만 저장해야한다. [4]

boolean x = true;
System.out.println(x);
[ 출력값 ] 
>> true

2) 제어문이나 반복문의 조건식으로 사용할 수 있다.

boolean x;   // 디폴트 값 : false
x = (8%2 == 0);
System.out.println(x);
if(x) {
   System.out.println("짝수");
} else(x) {
   System.out.println("홀수");
}
[ 출력값 }
>> true
>> 짝수

참조 자료형

참조 자료형((Reference DataType)은 주소를 가지고 있는 변수 즉, 선언된 변수에 값이 아닌 인스턴스에 대한 주소값이 저장된다. [2] [3] Java API에서 제공되거나 프로그래머에 의해 만들어진 클래스를 자료형으로 선언하는 경우라고 할 수 있다. [8] 또한 참조 자료형의 종류들은 new 키워드를 이용하여 객체를 만들어야만 실제로 메모리가 할당되고 그 공간을 사용할 수 있다. [9] 하지만 String과 배열은 new 키워드 없이 객체를 생성할 수 있지만 참조 자료형에 속한다. [10]

클래스
  • 정의

클래스(Class)는 클래스 자료형 객체가 갖는 참조값을 가지고 있다. 보통 String은 new 키워드 없이 기본 자료형처럼 사용해서 값이 저장되어 있다고 생각할 수 있지만, 이는 참조 자료형이기 때문에 값이 아닌 주소를 갖고 있다. [10][8]

  • 표현 방법
인터페이스
  • 정의
  • 표현 방법
배열
  • 정의
  • 표현 방법

각주

  1. 자료형〉, 《위키백과》
  2. 2.0 2.1 2.2 자바 자료형〉, 《퍼그의 전초기지》
  3. 3.0 3.1 자바!변수(기본자료형, 참조자료형, 자료의 형변환)〉, 《개인블로그》, 2017-04-12
  4. 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 기본 자료형〉, 《언제나휴일(EHPUB.CO.KR)》
  5. 5.0 5.1 5.2 5.3 문자형-char〉, 《개인블로그》, 2017-11-18
  6. 6.0 6.1 6.2 6.3 JAVA의 기본 자료형(1)〉, 《개인블로그》, 2007-04-30
  7. 7.0 7.1 정수와 실수〉, 《[바로실습]생활코딩-자바(JAVA)》
  8. 8.0 8.1 참조 자료형(reference data type), 참조 자료형 종류〉, 《개인블로그》
  9. 자바 기초_3 참조 자료형 이해하기〉, 《개인블로그》, 2015-08-06
  10. 10.0 10.1 Java 참조 자료형(클래스, 인터페이스, 배열, 열거 타입)〉, 《개인블로그》, 2020-05-23

참고자료

같이 보기


  의견.png 이 자료형 문서는 프로그래밍에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.