서브클래스 구문
서브클래스 정의 구문
다른 클래스의 하위 클래스를 정의하려면 classdef
라인에서 <
문자 다음에 슈퍼클래스를 추가하십시오.
classdef ClassName < SuperClass
여러 클래스에서 상속하는 경우라면 &
문자를 사용하여 슈퍼클래스의 결합을 나타내십시오.
classdef ClassName < SuperClass1 & SuperClass2
여러 슈퍼클래스에서 파생하는 방법에 대한 자세한 내용은 클래스 멤버 호환성 항목을 참조하십시오.
클래스 특성
서브클래스는 슈퍼클래스 특성을 상속하지 않습니다.
double형에서 서브클래스 생성하기
double
형에서 파생된 클래스를 정의하고 양수로 값을 제한한다고 가정하겠습니다. PositiveDouble
클래스는 다음과 같습니다.
디폴트 생성자(입력 인수 없음)를 지원합니다. 입력 인수 없는 생성자 요구 사항 항목을 참조하십시오.
mustBePositive
를 사용하여 입력값을 양수 값으로 제한합니다.입력값과 함께 슈퍼클래스 생성자를 호출하여 double형 숫자형 값을 생성합니다.
classdef PositiveDouble < double methods function obj = PositiveDouble(data) if nargin == 0 data = 1; else mustBePositive(data) end obj = obj@double(data); end end end
숫자로 구성된 1×5 배열을 사용하여 PositiveDouble
클래스의 객체를 생성합니다.
a = PositiveDouble(1:5);
여느 double형과 같이 이 클래스의 객체에 대해 연산을 수행할 수 있습니다.
sum(a)
ans = 15
PositiveDouble
클래스의 객체는 양수 값이어야 합니다.
a = PositiveDouble(0:5);
Error using mustBePositive (line 19) Value must be positive. Error in PositiveDouble (line 7) mustBePositive(data)