metaclass
Retorna o objeto meta.class que descreve a classe de um objeto.
Categoria: Programming > Classes
Sintaxe
mc = metaclass(obj)
Retorna a descrição da classe de obj, que pode ser um valor interno ou um objeto.
Descrição
metaclass é a forma programática da sintaxe ?NomeDaClasse: dá acesso aos dados de reflexão de uma classe. Use mc.Name para o nome da classe, mc.SuperclassList para as superclasses diretas e as listas de propriedades e métodos para ver o que a classe define.
Como recebe uma instância, metaclass(x) sempre descreve class(x). Para partir apenas de um nome de classe, crie ou passe uma instância dessa classe.
Argumentos de entrada
obj- Qualquer valor. É descrita a classe dele, e não o valor.
Argumentos de saída
mc- Um objeto
meta.classcom propriedades comoName,SuperclassList,PropertyList,MethodListeHandleCompatible.
Exemplo
Inspecionando uma classe interna
mc = metaclass(containers.Map);
disp(mc.Name)
disp({mc.SuperclassList.Name})
disp(mc.HandleCompatible)
Saída
containers.Map
{'handle'}
1
Observações
Para classes internas, as listas de propriedades e métodos contêm os membros que o MatLivre conhece, então seus tamanhos podem diferir dos do MATLAB.