ADT (Abstract Data Type)
2020. 9. 14. 13:21ㆍ컴퓨터 수업/자료구조
@번역
Abstract Data Type = 추상 자료형이다.
기능의 구현 부분을 나타내지 않고 순수한 기능이 무엇인지 나열한 것을 추상 자료형이라고 한다.
@그렇다면 자료형이란?
자료형은 어떤 특정 class라고 생각할 수 있다.
composite data type이 될 수도 있지만, 그저 int같은 단일data type일수도 있다.
@이해를 돕기위한 java문법
abstract
java에는 추상클래스라는 datatype이 있다. 인스턴스화를 금지하는 클래스를 의미하는데, 이때 인스턴스화를 구현이라고 한다.
1.추상클래스의 선언
abstract class Animal {
String name;
abstract void move(); // 이 부분을 추상메소드라고 한다, 추상클래스 내부의 메소드
}
2.추상클래스의 구현 (정의)
public class Tiger extends Animal {
int age;
void move()
{
System.out.println("네발로 이동한다.");
}
}
@이해를 돕기위한 예시와 필요성
예를 들면, 사용 설명서와 같다. 선풍기의 사용 설명서를 본다고 가정하자. 사용 설명서에는 정지, 미풍, 약풍, 강풍, 회전, 타이머등의 기능 설명과 사용 방법이 나와있다. 하지만 버튼을 눌렀을 때 선풍기 내부회로에서 어떤 일이 발생하는지에 대해서는 전혀 나와있지 않다. 추상 자료형은 선풍기의 사용 설명서와 같이 기능과 사용 방법을 정의한 것이다.
추상 자료형은 구현자와 사용자를 분리해 준다. 라이브러리를 가져다 쓰거나 내장 함수를 사용하는 것도 추상 자료형이 정의되어 있기 때문이다. 또한 추상 자료형에 대한 구현은 외부로 부터 숨겨져 정보 은닉(Information Hiding)이 이루어지게 된다.
Reference
'컴퓨터 수업 > 자료구조' 카테고리의 다른 글
리스트와 스택의 차이 (0) | 2020.10.05 |
---|---|
Big O notation (0) | 2020.09.15 |
List (0) | 2020.09.15 |
buffer란? (0) | 2020.09.14 |
용어 (0) | 2020.09.14 |