Maison développement back-end tutoriel php php基础知识:类与对象(3) 构造函数和析构函数_PHP教程

php基础知识:类与对象(3) 构造函数和析构函数_PHP教程

Jul 21, 2016 pm 03:59 PM
php php5 et 函数 et exister 基础知识 定义 对象 开发者 方法 détruire

构造函数
PHP 5 允行开发者在一个类中定义一个方法作为构造函数。具有构造函数的类会在每次创建对象时先调用此方法,所以非常适合在使用对象之前做一些初始化工作。 
注意: 
如果子类中定义了构造函数则不会暗中调用其父类的构造函数。要执行父类的构造函数,需要在子类的构造函数中调用 parent::__construct()。(??和其他语言明显不同??)

例10.8.使用新标准的构造函数
class BaseClass {
  function __construct() {
      print "In BaseClass constructor\n";
  }
}

class SubClass extends BaseClass {
  function __construct() {
      parent::__construct();
      print "In SubClass constructor\n";
  }
}
$obj = new BaseClass();
$obj = new SubClass();

为了实现向后兼容性,如果 PHP 5 在类中找不到 __construct() 函数,它就会尝试寻找旧式的构造函数,也就是和类同名的函数。因此唯一会产生兼容性问题的情况是:类中已有一个名为 __construct() 的方法,但它却又不是构造函数。 

析构函数
PHP 5 引入了析构函数的概念,这类似于其它面向对象的语言,如 C++。析构函数会在到某个对象的所有引用都被删除或者当对象被显式销毁时执行。 
例10.9.析构函数示例
class MyDestructableClass {
  function __construct() {
      print "In constructor\n";
      $this->name = "MyDestructableClass";
  }

  function __destruct() {
      print "Destroying " . $this->name . "\n";
  }
}
$obj = new MyDestructableClass();
和构造函数一样,父类的析构函数不会被引擎暗中调用。要执行父类的析构函数,必须在子类的析构函数体中显式调用 parent::__destruct()。 (??和其他语言明显不同??)
注意: 
析构函数在脚本关闭时调用,此时所有的头信息已经发出。 
注意: 
试图在析构函数中抛出一个异常会导致致命错误。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/317406.htmlTechArticle构造函数 PHP5允行开发者在一个类中定义一个方法作为构造函数。具有构造函数的类会在每次创建对象时先调用此方法,所以非常适合在使用...
Déclaration de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

<🎜>: Grow A Garden - Guide de mutation complet
4 Il y a quelques semaines By DDD
<🎜>: Bubble Gum Simulator Infinity - Comment obtenir et utiliser les clés royales
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Système de fusion, expliqué
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Comment déverrouiller le grappin
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1677
14
Tutoriel PHP
1280
29
Tutoriel C#
1257
24
Que se passe-t-il si Session_Start () est appelé plusieurs fois? Que se passe-t-il si Session_Start () est appelé plusieurs fois? Apr 25, 2025 am 12:06 AM

Plusieurs appels vers session_start () se traduiront par des messages d'avertissement et d'éventuels remplacements de données. 1) PHP émettra un avertissement, ce qui incite la session à démarrer. 2) Il peut provoquer un écrasement inattendu des données de session. 3) Utilisez session_status () pour vérifier l'état de la session pour éviter les appels répétés.

Compositeur: aider le développement de PHP à travers l'IA Compositeur: aider le développement de PHP à travers l'IA Apr 29, 2025 am 12:27 AM

L'IA peut aider à optimiser l'utilisation du compositeur. Les méthodes spécifiques incluent: 1. Optimisation de la gestion des dépendances: AI analyse les dépendances, recommande la meilleure combinaison de versions et réduit les conflits. 2. Génération de code automatisée: AI génère des fichiers composer.json conformes aux meilleures pratiques. 3. Améliorer la qualité du code: l'IA détecte des problèmes potentiels, fournit des suggestions d'optimisation et améliore la qualité du code. Ces méthodes sont implémentées par l'apprentissage automatique et les technologies de traitement du langage naturel pour aider les développeurs à améliorer l'efficacité et la qualité du code.

Quelle est la signification de la fonction session_start ()? Quelle est la signification de la fonction session_start ()? May 03, 2025 am 12:18 AM

Session_Start () IsCrucialInPhpFormanAgingUsersessions.1) ItinitiateSanEwSessionIfNoneExists, 2) ConsomaSanExistingSession, and3) SetSasessionCooKieforContinuityAcrossrequests, permettant aux applications liées à la réaction et à la personne.

Comment utiliser les fonctions MySQL pour le traitement et le calcul des données Comment utiliser les fonctions MySQL pour le traitement et le calcul des données Apr 29, 2025 pm 04:21 PM

Les fonctions MySQL peuvent être utilisées pour le traitement et le calcul des données. 1. L'utilisation de base comprend le traitement des chaînes, le calcul de la date et les opérations mathématiques. 2. L'utilisation avancée consiste à combiner plusieurs fonctions pour implémenter des opérations complexes. 3. L'optimisation des performances nécessite d'éviter l'utilisation de fonctions dans la clause où et d'utiliser des tables groupby et temporaires.

H5: Améliorations clés de HTML5 H5: Améliorations clés de HTML5 Apr 28, 2025 am 12:26 AM

HTML5 apporte cinq améliorations clés: 1. Les balises sémantiques améliorent la clarté du code et les effets SEO; 2. Prise en charge multimédia simplifie la vidéo et la formation audio; 3. L'amélioration du formulaire simplifie la vérification; 4. Le stockage hors ligne et local améliore l'expérience utilisateur; 5. Canvas et fonctions graphiques améliorent la visualisation des pages Web.

Compositeur: le gestionnaire de packages pour les développeurs PHP Compositeur: le gestionnaire de packages pour les développeurs PHP May 02, 2025 am 12:23 AM

Composer est un outil de gestion des dépendances pour PHP et gère les dépendances du projet via le fichier composer.json. 1) Parse Composer.json pour obtenir des informations de dépendance; 2) analyser les dépendances pour former un arbre de dépendance; 3) Télécharger et installer les dépendances de Packagist au répertoire du fournisseur; 4) Générez le fichier composer.lock pour verrouiller la version de dépendance pour assurer la cohérence de l'équipe et la maintenabilité du projet.

Comment utiliser les traits de type en C? Comment utiliser les traits de type en C? Apr 28, 2025 pm 08:18 PM

Les typétraires sont utilisés en C pour la vérification et le fonctionnement des types de temps de compilation, l'amélioration de la flexibilité du code et la sécurité des types. 1) Le jugement de type est effectué via STD :: is_integral et std :: is_floating_point pour obtenir une vérification et une sortie de type efficaces. 2) Utilisez STD :: is_trivially_copyable pour optimiser la copie vectorielle et sélectionner différentes stratégies de copie en fonction du type. 3) Faites attention à la prise de décision en temps de compilation, à la sécurité des types, à l'optimisation des performances et à la complexité du code. L'utilisation raisonnable des typétraires peut considérablement améliorer la qualité du code.

Comment configurer le jeu de caractères et les règles de collation de MySQL Comment configurer le jeu de caractères et les règles de collation de MySQL Apr 29, 2025 pm 04:06 PM

Les méthodes de configuration des ensembles de caractères et des collations dans MySQL incluent: 1. Définition des jeux de caractères et des collations au niveau du serveur: setNames'utf8 '; SetCharAttersetUtf8; SetCollation_Connection = 'utf8_general_ci'; 2. Créez une base de données qui utilise des jeux de caractères et des collations spécifiques: CreatedAtAbasEExample_DBCharacteSetUtf8CollateUtf8_General_ci; 3. Spécifiez les ensembles de caractères et les collations lors de la création d'une table: CreateTableExample_Table (IDInt

See all articles