Maison  >  Article  >  développement back-end  >  Explication détaillée des variables membres statiques PHP

Explication détaillée des variables membres statiques PHP

墨辰丷
墨辰丷original
2018-05-25 14:48:401485parcourir

Cet article présente principalement l'explication détaillée des variables membres statiques PHP. Les amis intéressés peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Membres statiques : Les membres d'une classe statique ajoutent le modificateur static, qui est un membre statique. Vous pouvez directement utiliser le nom de la classe + le nom du membre statique pour accéder à ce membre statique, car statique. les membres existent en mémoire, les membres non statiques doivent être instanciés avant que la mémoire ne soit allouée, afin que les membres statiques ne puissent pas accéder aux membres non statiques. Étant donné que les membres statiques existent en mémoire, les membres non statiques peuvent accéder directement aux membres statiques de la classe

1. Variable globale statique

Définition : Ajoutez le mot-clé static avant la variable globale et la variable est définie comme une variable globale statique.

Caractéristiques :

A. Cette variable alloue de la mémoire dans la zone de données globale.

B. Initialisation : si elle n'est pas explicitement initialisée, elle sera implicitement initialisée à 0 (les variables automatiques sont aléatoires sauf si elles sont explicitement initialisées).

C. La variable d'accès n'est visible que dans le fichier source, à proprement parler, elle doit commencer au point de définition et se terminer dans ce fichier.

2. Variables locales statiques

Caractéristiques :

A. données Allouer de la mémoire.

B. Initialisation : s'il n'est pas explicitement initialisé, il sera implicitement initialisé à 0 et les appels de fonction suivants ne seront plus initialisés.

C. Il réside toujours dans la zone de données globales jusqu'à la fin du programme. Mais sa portée est une portée locale. Lorsque le bloc de fonction ou d'instruction qui le définit prend fin, sa portée prend fin.

Les membres de données statiques suivent les mêmes règles d'accès publiques, protégées et privées que les membres de données ordinaires

Parce que les membres de données statiques allouent de la mémoire dans la zone de données globale et sont partagés par tous les objets appartenant à cette classe, donc, Il n'appartient pas à un objet de classe spécifique, et sa portée est visible lorsqu'aucun objet de classe n'est généré, c'est-à-dire lorsqu'aucune instance de la classe n'est générée, nous pouvons l'utiliser '' Initialisation des membres de données statiques ; est différent de l’initialisation générale des membres de données. Le format d'initialisation des membres de données statiques est :

type de données><nom de classe>::<nom de membre de données statique>=<valeur>

Les données membres statiques d'une classe ont deux formulaires d'accès :

. ou ::

Si les droits d'accès des membres de données statiques sont autorisés (c'est-à-dire les membres publics), les membres de données statiques peuvent être référencés dans le programme selon le format ci-dessus ; 🎜>Les membres de données statiques sont principalement utilisés lorsque chaque objet a le même attribut. Par exemple, pour une classe de dépôt, le taux d'intérêt pour chaque instance est le même. Par conséquent, les intérêts doivent être définis en tant que données membres statiques de la classe de dépôt. Cela présente deux avantages. Premièrement, quel que soit le nombre d'objets de classe de dépôt définis, les membres des données d'intérêt partagent tous la mémoire allouée dans la zone de données globale, ce qui permet d'économiser de l'espace de stockage. Deuxièmement, une fois que les intérêts doivent être modifiés, tant qu'ils sont modifiés une fois, les intérêts de tous les objets de dépôt seront modifiés

Ce qui précède représente l'intégralité du contenu de cet article ; J'espère que cela sera utile pour l'apprentissage de chacun.

Recommandations associées :

Constantes et

variables en php

Explication détaillée avec images et texte
Méthode Angularjs pour définir une

variable globale

(tutoriel image et texte)
Compréhension approfondie du niveau bloc portée et confidentialité en JavaScript

Variables

et mode module (tutoriel graphique)

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