par la documentation import
et Importing Classes en savoir plus:
import Impact.*
importera toutes les méthodes statiques publiques de Impact
dans votre espace de travail de base. Les méthodes statiques privées seront importées mais ne peuvent pas être appelées.
Par exemple, la définition de classe suivante:
classdef testcode
methods(Static)
function test
disp('hi')
end
end
end
Et les commandes suivantes:
import testcode.*
test
Retours:
>> test
hi
Cela étant dit, les fonctions importer dans votre espace de noms arbitrairement comme ceci est beaucoup pas une bonne idée et peut facilement conduire à des conflits d'espaces de noms et de la confusion.
par la documentation:
Évitez d'utiliser cette syntaxe, comme l'importation des paquets apporte un ensemble de noms non précisé dans le champ d'application locale, ce qui pourrait entrer en conflit avec des noms dans l'espace de travail Matlab. Une utilisation possible de cette syntaxe consiste à importer un nom de package partiel . Ensuite, lorsque vous appelez une fonction, vous utilisez un nom de package plus court qui n'est pas en conflit avec les noms de fonctions simples. Pour par exemple, le package matlab.io.hdf4.sd
a une fonction close
, qui peut entrer en conflit avec la fonction MATLAB close
.
Vous pouvez également importer spécifiques méthodes statiques, ce qui est une légère amélioration par rapport à ce qui précède, mais l'OMI la mise en garde est toujours applicable.
Par exemple:
import testcode.test
test
Identique à l'exemple précédent.
Plus simple que prévu. Je n'ai pas réalisé la possibilité de l'importer comme un paquet. Je suppose que dans ce contexte, les propriétés d'une classe n'ont pas beaucoup de sens. Ai-je raison? Merci beaucoup! –
Non, cela n'a pas de sens. – excaza