Maison php教程 php手册 php中final static $this关键字学习笔记

php中final static $this关键字学习笔记

May 25, 2016 pm 04:47 PM
$this final static

在php中final static $this关键字主要是用在类中或对象中,下面我来把我学习final static $this笔记记录下来,有需要了解的朋友可参考参考.

final关键字

php final关键字用来在一个函数或者类名称前面,表明该函数不能被重写或者该类不能被继承.

1、final方法不能被重写.

如果不希望类中某个方法被子类重写,只需要在这个方法前加上关键字final,即设置final方法.

实例代码如下:

<?php
class ex1 {
    final function fn1() {
        return "php";
    }
}
class ex2 extends ex1 {
    function fn1() {
        return "html";
    }
}
$p = new ex2();
echo $p->fn1();
?>
Copier après la connexion

加了final关键字的方法不能被重写,运行出错.

2、final类不能被继承.

被声明了final的类不能被继承,否则出错.

实例代码如下:

<?php
final class ex1 {
    private $name;
}
class ex2 extends ex1 {
    private $age;
}
?>
Copier après la connexion

static关键字

php static关键字不仅可以用来声明一个静态变量,在类中同样可以声明静态的属性或者方法,成为“类属性”或“类方法”.

1、声明了静态的属性和方法后,在类中不能用$this关键字来引用,可以使用下面两种方法引用:

在类中:self::静态成员名称

在类外:类名称::静态成员名称

2、访问该类时,可不必实例化,直接使用类名称::静态成员名称的格式.

静态属性实例:

实例代码如下:

<?php
class user {
    private static $count = 10;
    private static $sum = 1;
    public function __construct() {
        for ($i = 1; $i < 11; $i++) {
            self::$sum = self::$sum * self::$count; /* 调用静态变量 */
            self::$count--;
        }
    }
    public function getCount() {
        return self::$sum;
    }
}
$user1 = new user();
echo $user1->getCount();
?>
Copier après la connexion

静态方法实例:

实例代码如下:

<?php
class Math {
    public static function sum($num1, $num2) {
        return $num1 + $num2;
    }
    public static function product($num1, $num2) {
        return $num1 * $num2;
    }
}
$a = 88;
$b = 100;
echo "两数之和为: ";
echo "<br>";
echo Math::sum($a, $b);
echo "<P>";
$a = 66;
$b = 88;
echo "两数之积为: ";
echo "<br>";
echo Math::product($a, $b);
?>
Copier après la connexion

$this关键字

为了解决php类和对象中变量与属性的命名冲突和不确定性问题,引入了”$this”关键字来调用当前的对象.

在类中调用当前对象的属性和方法,必须使用”$this->”关键字;$this在构造函数中指该构造函数所创建的新对象;方法内的局部变量不属于对象,不使用$this关键字取值.

使用$this关键字,我们可以在类中调用对象属性或者方法.

1、调用变量

实例代码如下:

<?php
class user {
    private $n;
    function __construct() {
        $name = "Mike";
        echo $this->n = $name;
    }
}
$p = new user();
?>
Copier après la connexion

2、调用方法

实例代码如下:

<?php
class cal {
    public function sum($a, $b) {
        return $a + $b;
    }
    public function prt($a, $c) {
        return $a * $c;
    }
    public function result($a, $b, $c) {
        $a = $this->sum($a, $b);
        return $this->prt($a, $c);
    }
}
$c = new cal();
echo "(2+3)*10= " . $c->result(&#39;2&#39;, &#39;3&#39;, &#39;10&#39;);
?>
Copier après la connexion


教程地址:

欢迎转载!但请带上文章地址^^

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

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
2 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)

Erreur fatale PHP : utilisation de $this lorsqu'il n'est pas dans le contexte de l'objet Erreur fatale PHP : utilisation de $this lorsqu'il n'est pas dans le contexte de l'objet Jun 25, 2023 am 08:52 AM

En développement PHP, lorsque vous souhaitez utiliser des variables membres ou des méthodes d'une classe, vous rencontrez souvent le message d'erreur "PHPFatalerror: Using$thiswhennotinobjectcontext". Ce message d'erreur est dû à un contexte incorrect lors de l'utilisation du mot-clé $this pour accéder aux membres de la classe. Pour résoudre ce problème, nous présenterons ci-dessous quelques solutions de contournement. Assurez-vous que le code est à l'intérieur de la classe Vérifiez si le code est à l'intérieur de la classe

La différence entre final, enfin et finaliser en Java La différence entre final, enfin et finaliser en Java Feb 19, 2024 pm 12:16 PM

La différence entre final, finalement et finaliser en Java nécessite des exemples de code spécifiques. Dans la programmation Java, vous rencontrez souvent les trois mots-clés final, enfin et finaliser. Bien qu'ils soient orthographiés de la même manière, ils ont des significations et des utilisations différentes. Cet article expliquera en détail les différences entre ces trois mots-clés et donnera des exemples de code pour aider les lecteurs à mieux comprendre. 1. Mot-clé final Le mot-clé final peut être utilisé pour les classes, les méthodes et les variables. Sa fonction est de rendre la classe modifiée

En Java, est-il possible de définir une constante en utilisant uniquement le mot-clé final ? En Java, est-il possible de définir une constante en utilisant uniquement le mot-clé final ? Sep 20, 2023 pm 04:17 PM

Une variable constante est une variable dont la valeur est fixe et dont une seule copie existe dans le programme. Une fois que vous avez déclaré une variable constante et lui avez attribué une valeur, vous ne pouvez plus modifier sa valeur tout au long du programme. Contrairement à d'autres langages, Java ne prend pas directement en charge les constantes. Cependant, vous pouvez toujours créer une constante en déclarant une variable static et final. Statique - Une fois que vous avez déclaré une variable statique, elle sera chargée en mémoire au moment de la compilation, c'est-à-dire qu'une seule copie sera disponible. Final - Une fois que vous avez déclaré une variable finale, sa valeur ne peut plus être modifiée. Par conséquent, vous pouvez créer une constante en Java en déclarant la variable d'instance comme statique et finale. Exemple de démonstration classData{&am

Quelle est la fonction du mot - clé final Java Quelle est la fonction du mot - clé final Java Nov 25, 2022 pm 04:26 PM

En Java, final peut être utilisé pour modifier des classes, des méthodes et des variables. La classe finale modifiée signifie que la classe ne peut être héritée par aucune autre classe, ce qui signifie que cette classe est une classe feuille dans un arbre d'héritage, et la conception de cette classe a été considérée comme parfaite et n'a pas besoin d'être modifiée ou étendue. La méthode dans la classe finale modifiée signifie que la classe ne peut être héritée par aucune autre classe et ne peut pas être remplacée ; c'est-à-dire que la méthode est verrouillée pour empêcher la classe héritée de la modifier. final modifie une variable dans une classe, indiquant que la variable ne peut pas être modifiée une fois initialisée.

Quelle est la fonction et l'utilisation de static en langage C Quelle est la fonction et l'utilisation de static en langage C Jan 31, 2024 pm 01:59 PM

Le rôle et l'utilisation de la statique en langage C : 1. Portée de la variable 2. Cycle de vie 3. Fonction interne 4. Modifier la fonction 6. Autres utilisations ; S'il y a le mot-clé static avant une variable, alors la portée de la variable est limitée au fichier dans lequel elle est déclarée. En d'autres termes, la variable est une "portée au niveau du fichier", ce qui est très utile pour empêcher le ". problème de définition de duplication des variables ; 2. Cycle de vie, les variables statiques sont initialisées une fois lorsque le programme commence à s'exécuter et détruites à la fin du programme, etc.

Comment utiliser static, this, super et final en Java Comment utiliser static, this, super et final en Java Apr 18, 2023 pm 03:40 PM

1. static Veuillez d'abord regarder le programme suivant : publicclassHello{publicstaticvoidmain(String[]args){//(1)System.out.println("Hello, world!");//(2)}} J'ai vu ça Les programmes de segments sont familiers à la plupart des personnes ayant étudié Java. Même si vous n’avez pas appris Java mais que vous avez appris d’autres langages de haut niveau, comme le C, vous devriez être capable de comprendre la signification de ce code. Il affiche simplement "Bonjour tout le monde" et n'a aucune autre utilité. Cependant, il montre l'objectif principal du mot-clé statique.

Scénarios d'application pratiques et compétences d'utilisation du mot-clé statique en langage C Scénarios d'application pratiques et compétences d'utilisation du mot-clé statique en langage C Feb 21, 2024 pm 07:21 PM

Scénarios d'application pratiques et compétences d'utilisation du mot-clé static en langage C 1. Présentation static est un mot-clé en langage C, utilisé pour modifier des variables et des fonctions. Sa fonction est de modifier son cycle de vie et sa visibilité pendant l'exécution du programme, rendant les variables et les fonctions statiques. Cet article présentera les scénarios d'application réels et les techniques d'utilisation du mot-clé static, et l'illustrera à travers des exemples de code spécifiques. 2. Les variables statiques prolongent le cycle de vie des variables. L'utilisation du mot-clé static pour modifier les variables locales peut prolonger leur cycle de vie.

Le rôle de la statique Le rôle de la statique Jan 24, 2024 pm 04:08 PM

Les fonctions de statique : 1. Variables ; 2. Méthodes ; 3. Classes ; 4. Autres utilisations ; 5. Environnement multithread ; 7. Mode Singleton ; Optimisation de la disposition de la mémoire ; 11. Évitez les initialisations répétées ; 12. Utilisation dans les fonctions. Introduction détaillée : 1. Variables, variables statiques Lorsqu'une variable est déclarée comme statique, elle appartient au niveau classe, pas au niveau instance, ce qui signifie que quel que soit le nombre d'objets créés, une seule variable statique existe, et tous les objets. partagez ces variables statiques et ainsi de suite.

See all articles