이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

속성 get 메서드

속성 액세스 메서드 개요

속성 액세스 메서드에 대한 개요는 속성 액세스 메서드 항목을 참조하십시오.

속성 get 메서드 구문

MATLAB®은 속성값이 쿼리될 때마다 속성의 get 메서드를 호출합니다.

참고

속성 액세스 메서드를 직접 호출할 수는 없습니다. 이 메서드는 사용자가 속성값에 액세스할 때 MATLAB에 의해 호출됩니다.

속성 get 메서드의 구문은 다음과 같습니다. 여기서 PropertyName은 속성의 이름입니다. 함수는 속성값을 반환해야 합니다.

methods 
   function value = get.PropertyName(obj)
      ...
end

종속 속성에 대한 값 계산하기

SquareArea 클래스는 종속 속성 Area를 정의합니다. MATLAB은 종속 Area 속성에 대한 값을 저장하지 않습니다. Area 속성의 값을 쿼리하면 MATLAB이 Width 속성과 Height 속성을 기반으로 하여 값을 계산하는 get.Area 메서드를 호출합니다.

classdef SquareArea
   properties
      Width
      Height
   end
   properties (Dependent)
      Area
   end
   methods
      function a = get.Area(obj)
         a = obj.Width * obj.Height;
      end
   end
end

get 메서드는 오류를 반환하지 않음

MATLAB은 객체를 표시할 때 기본적으로 속성 get 메서드에서 반환하는 오류 메시지를 표시하지 않습니다. MATLAB은 전체 객체가 표시되는 것을 방지하기 위해 속성 get 메서드가 발생시키는 오류를 허용하지 않습니다.

속성 set 메서드를 사용하여 속성값의 유효성을 검사할 수 있습니다. 속성을 설정할 때 값의 유효성을 검사하면 객체가 유효한 상태인지 확인할 수 있습니다. 속성 get 메서드를 사용하면 set 메서드에서 유효성이 검사된 값만 반환할 수 있습니다.

get 메서드 동작

MATLAB은 다음과 같은 경우 속성 get 메서드를 호출하지 않습니다.

  • 자체 속성 get 메서드에서 속성값을 가져오는 경우. 이는 get 메서드가 재귀적으로 호출되지 않도록 하기 위해서입니다.

  • 값 객체(즉, handle 클래스에서 파생되지 않은 객체)를 복사하는 경우. 한 객체에서 다른 객체로 속성값을 복사하는 경우에는 set 메서드나 get 메서드가 모두 호출되지 않습니다.

관련 항목