Поместите код определения класса в файлы, которые имеют .m
расширение. Имя файла должно совпасть с именем класса, сопровождаемого .m
расширение.
Для получения информации о коде, который задает класс, смотрите Компоненты Класса.
Существует два способа создать папки, которые содержат файлы определения класса:
Path folder — папка, которая находится на пути MATLAB®.
Class folder — папка, которая находится в папке path и названа с @
символ и имя класса. Например:
@MyClass
Папки класса не находятся непосредственно на пути MATLAB. Папка path, которая содержит папку класса, находится на пути MATLAB.
Существует два способа задать классы относительно файлов и папок:
Создайте один, автономный файл определения класса в папке path или папке класса
Задайте класс в нескольких файлах, который требует, чтобы вы использовали папку класса в папке path
Создайте один, автономный файл определения класса в папке на пути MATLAB®. Имя файла должно совпадать с классом (и конструктор) имя и должно иметь .m
расширение. Задайте класс полностью в этом файле. Можно поместить другие однофайловые классы в эту папку.
Следующая схема показывает пример этой структуры папок. pathfolder
папка на пути MATLAB.
Если вы используете несколько файлов, чтобы задать класс, поместите все файлы определения класса (файл, содержащий classdef
и все файлы метода класса) в одном @ClassName
папка. Та папка класса должна быть в папке, которая находится на пути MATLAB. Можно задать только один класс в папке класса.
Папка path может содержать классы, заданные и в папках класса и в одном файлах без папки класса.
Родительская папка к папке пакета находится на пути MATLAB, но папка пакета не. Папки пакета (которые всегда начинаются с +
символ), может содержать несколько определений классов, ограниченных по объему пакетом функций и другие пакеты. Папка пакета задает новое пространство имен, в котором можно снова использовать имена классов. Используйте имя пакета, чтобы относиться к классам и функциям, определяемым в папках пакета (например, packagefld1.ClassNameA()
, packagefld2.packageFunction()
).