본문 바로가기

ABAP 프로그래밍 개념/Object-Oriented ABAP

클래스와 객체의 관계 & 클래스와 인스턴스

클래스와 객체의 관계


객체와 클래스의 구별은 절차적인 ABAP 프로그래밍 언어에서 변수에 대한 선언을 예로 들면 이해하기 쉽다.

 

DATA object_1

 

위 구문은 CHAR 1 자릿수 변수를 생성하는 기능을 수행한다.

 

이것을 객체 지향 개념으로 적용한다면,

 

위 구문에서 DATA객체를 생성하는 클래스이며, DATA라는 클래스를 이용해 무한한 객체(변수)를 생성할 수 있다. 

 

“즉 DATA 라는 문법 자체가 객체를 만드는 클래스”라고 생각하면 된다.

 

OBJECT_1는 DATA라는 클래스를 통해 생성된 객체에 해당하며, 프로그램이 실행되면 데이터를 저장할 수 있는 메모리 공간을 점유하게 된다.

 

, 프로그래밍 언어에서의 객체어떠한 정보를 표현하기 위해 할당한 기억 장소를 의미하며 클래스는 그 기억 장소의 속성을 기술하는 구조에 대한 명칭이라고 정의할 수 있다.


클래스와 인스턴스


클래스로부터 객체를 만드는 과정을 “인스턴스 화”

어떤 클래스로부터 만들어진 객체를 그 클래스의 “인스턴스”

 

인스턴스라는 말은 클래스에 대한 부분 뿐만 아니라 ALV에서도 자주 사용되므로 단어의 의미를 정확하게 이해하고 있어야 한다.

 

객체는 모든 인스턴스를 대표하는 포괄적인 의미를 가지며, 인스턴스는 어떤 클래스로부터 만들어진 것인지를 강조하는 구체적인 의미를 가진다.

Class

클래스는 객체를 만들어 내는 설계도(빵틀과 같은)

Object

객체는 물체,대상,목적이라는 의미를 가지며 ABAP에서 클래스의 인스턴스이다.

Object Reference

프로그램 내에서 객체의 속성과 메서드에 접근할 수 있도록 한다.

Attribute(=Property, State)

객체가 가지는 속성 또는 특성이다.

Method(= Behavior)

객체의 행위를 정의한다.

Event

서로 다른 클래스 간에 호출할 수 있는 메서드이다.

자료 참고 : EASY ABAP 2.0

반응형

'ABAP 프로그래밍 개념 > Object-Oriented ABAP' 카테고리의 다른 글

Object Oriented 언어로서의 ABAP  (0) 2023.01.01
METHOD  (0) 2020.08.15
OBJECT(객체)란?  (1) 2020.08.12
CLASS [2] 구성요소  (0) 2020.08.05
CLASS [1]  (0) 2020.08.04