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

객체에 대한 저장 및 불러오기 프로세스

객체 저장 및 불러오기

saveload를 사용하여 객체를 저장하고 다시 불러올 수 있습니다.

save filename object
load filename object

저장되는 정보

MAT 파일에 객체를 저장하면 다음 항목이 저장됩니다.

  • 패키지 한정자를 포함하여 객체 클래스의 전체 이름

  • 동적 속성의 값

  • 클래스의 첫 번째 객체가 MAT 파일에 저장될 때 클래스로 정의된 모든 속성의 디폴트 값

  • 모든 속성의 이름 및 값. 다음과 같은 예외가 적용됩니다.

    • 현재 값이 클래스 정의에 지정된 디폴트 값과 같은 경우 속성이 저장되지 않습니다.

    • Transient, Constant 또는 Dependent 특성이 true로 설정된 경우 속성이 저장되지 않습니다.

속성 특성에 대한 설명은 Specify Property Attributes 항목을 참조하십시오.

그래픽스 객체를 저장하려면 savefig를 참조하십시오.

참고

이벤트와 리스너를 정의하는 객체에는 pack 명령을 사용하지 마십시오. pack 명령을 실행하면 작업 공간에서 객체에 대해 정의된 모든 리스너가 소멸됩니다. 객체를 저장할 때 리스너를 복원하는 방법에 대한 자세한 내용은 Restore Listeners 항목을 참조하십시오.

속성 데이터를 불러오는 방식

MAT 파일에서 객체를 불러오면 load 함수가 객체를 복원합니다.

  • load가 새 객체를 생성합니다.

  • 클래스의 ConstructOnLoad 특성이 true로 설정된 경우 load가 인수 없이 클래스 생성자를 호출합니다. 그렇지 않은 경우 load가 클래스 생성자를 호출하지 않습니다.

  • 저장되어 있는 속성값을 load가 객체 속성에 할당합니다. 이렇게 값을 할당하면 클래스로 정의되어 있는 속성 set 메서드가 호출됩니다(Dependent, Constant 또는 Transient 속성은 예외로, 저장되거나 불러오지 않음).

  • 값이 저장되지 않은 속성에는 load가 MAT 파일에 저장되어 있는 디폴트 값을 할당합니다. 이렇게 값을 할당하면 클래스로 정의된 속성 set 메서드가 호출됩니다.

MATLAB®은 속성 set 메서드를 호출하여 클래스 정의가 변경되어도 값이 계속 유효하도록 합니다.

속성 set 메서드에 대한 자세한 내용은 속성 set 메서드 항목을 참조하십시오.

불러오는 중 오류 발생

새 버전의 클래스가 속성을 제거하거나 속성의 이름을 바꾸거나 속성의 유효성을 변경하는 경우 변경되거나 삭제된 속성을 설정하려고 하면 load가 오류를 생성할 수 있습니다.

객체를 파일에서 불러올 때 오류가 발생하면 MATLAB이 다음 작업 중 하나를 수행합니다.

  • 클래스가 loadobj 메서드를 정의하는 경우 MATLAB이 저장된 값을 structloadobj 메서드로 반환합니다.

  • 클래스가 loadobj 메서드를 정의하지 않은 경우 MATLAB이 오류를 표시하지 않고 무시합니다. 오류를 생성하지 않는 속성값으로 load 함수가 객체를 다시 구성합니다.

loadobj 메서드에 전달된 struct에서 필드 이름은 속성 이름과 일치합니다. 필드 값은 대응하는 속성에 저장된 값입니다.

저장된 객체가 동일한 이름의 프라이빗 속성을 갖는 여러 슈퍼클래스에서 파생되는 경우 struct는 가장 직속 슈퍼클래스의 속성값만 포함합니다.

saveobj 메서드와 loadobj 메서드를 구현하는 방법에 대한 자세한 내용은 Modify the Save and Load Process 항목을 참조하십시오.

속성 유효성 검사 변경

클래스 정의로 인해 속성 유효성 검사가 변경되어 불러온 속성값이 더 이상 유효하지 않게 된 경우 MATLAB이 해당 속성에 대해 현재 정의된 디폴트 값을 대체합니다. 이 클래스는 loadobj 메서드나 변환기 메서드를 정의하여 클래스 버전 간의 호환성을 제공할 수 있습니다.

속성 유효성 검사에 대한 내용은 속성값 유효성 검사 항목을 참조하십시오.

관련 항목