Object Pascal는 클래스를 지원합니다
클래스는 다음 멤버들을 담는 컨테이너입니다
- 필드:클래스 내부 변수
- 메서드:클래스 안의 프로시저 / 함수
- 속성:문법상 필드와 유사하지만 실제로는 읽기, 쓰기 한 쌍의 메서드로 구현됩니다
클래스에는 다른 종류의 멤버도 포함할 수 있으며 뒤에서 설명하겠습니다.
클래스는 객체 지향 프로그래밍을 위해 설계된 문법 규칙으로, 변수와 함수를 캡슐화하는 것이 목적입니다. 변수는 한 분류의 대상이 가진 고유한 특징을 설명하고 함수는 해당 대상이 할 수 있는 행동을 표현합니다.
현실 세계에서 어떤 대상을 설명할 때 ‘무엇인지’와 ‘무엇을 할 수 있는지’로 나눠 말하는데, ‘무엇인지’는 속성에 해당하고 ‘무엇을 할 수 있는지’는 행동에 해당합니다. 예를 들어 사람은 이름, 나이, 성별 같은 속성을 가지며 걷기, 밥 먹기, 노래 부르기 같은 행동도 할 수 있습니다.
type
TMyClass = class
MyInt: Integer; // 필드
property MyIntProperty: Integer read MyInt write MyInt; // 속성
procedure MyMethod; // 메서드
end;
procedure TMyClass.MyMethod;
begin
WriteLn(MyInt + 10);
end;
위 예시는 클래스 선언 문법이며 단독으로 실행할 수 없습니다. 다음 장에서 실행 방법을 다루겠습니다.
Previous: 구 유닛 노출하기
Next: 상속 및 가상 메서드