Maison  >  Article  >  développement back-end  >  Quelle est la différence entre les méthodes statiques PHP et les méthodes ordinaires

Quelle est la différence entre les méthodes statiques PHP et les méthodes ordinaires

青灯夜游
青灯夜游original
2021-03-11 17:48:533051parcourir

Différence : les méthodes statiques peuvent être appelées directement via "nom de classe ::nom de méthode" ; tandis que les méthodes ordinaires doivent créer une instance, c'est-à-dire un nouvel objet, puis l'appeler via "nom d'objet-> nom de la méthode" à appeler. Les méthodes statiques ne peuvent accéder qu'aux membres statiques de la classe ; les méthodes ordinaires peuvent accéder à n'importe quel membre de la classe.

Quelle est la différence entre les méthodes statiques PHP et les méthodes ordinaires

L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3

Méthode statique

  • L'espace mémoire statique est fixe, ce qui permet d'économiser relativement plus de ressources.

  • La création d'une instance nécessite l'ouverture d'une nouvelle mémoire. Les méthodes statiques qui consomment des ressources appartiennent à la classe et peuvent être utilisées avant que la classe ne soit instanciée ;

    Les méthodes statiques ne peuvent accéder qu'aux membres statiques de la classe ;
  • Seules les variables statiques et autres méthodes statiques peuvent apparaître dans static et des mots-clés comme celui-ci ne peuvent pas être utilisés dans les méthodes statiques. Parce qu'il appartient à la classe entière ;
  • Les méthodes statiques et les variables statiques utilisent toujours la même mémoire après la création, tandis que l'utilisation d'instances créera plusieurs mémoires.
  • Les méthodes ordinaires

peuvent accéder à n'importe quel membre de la classe, car les méthodes statiques peuvent être utilisées avant que la classe ne soit instanciée, et dans la classe Les variables non statiques doivent être instanciées avant que la mémoire puisse être allouée ;
  • Les méthodes statiques sont plus efficaces que l'instanciation. L'inconvénient des méthodes statiques est qu'elles ne sont pas automatiquement détruites, alors que les méthodes instanciées le peuvent. Détruire ;
  • La principale différence

Les méthodes statiques peuvent être utilisées avant de créer l'objet, et les méthodes non statiques doivent être appelées via l'objet du neuf.
  • Les méthodes statiques peuvent être appelées directement via le nom de la classe :: nom de la méthode. Les méthodes ordinaires doivent créer une instance, c'est-à-dire un nouvel objet, puis l'appeler via le nom de l'objet -> le nom de la méthode ; les classes statiques ne peuvent contenir que des membres statiques, sinon une erreur de compilation sera générée
  •  ;

    Les classes non statiques peuvent contenir à la fois des membres non statiques et des membres statiques. Les classes statiques ne peuvent pas être instanciées parce que les classes statiques amèneront le compilateur C# à marquer la classe comme abstraite et. scellé en même temps. Et le compilateur ne générera pas de constructeur d'instance dans le type, ce qui entraînera des classes statiques qui ne peuvent pas être instanciées
  • les classes non statiques le peuvent, et les membres statiques le peuvent ; n'est accessible que via l'accès aux classes, car les membres statiques appartiennent à la classe.
  • Apprentissage recommandé : "
  • Tutoriel vidéo PHP
"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn