Se han agregado muchas ideas orientadas a objetos a PHP5. Las ideas orientadas a objetos de PHP5 están más cerca de las ideas orientadas a objetos de Java. Aquí describiremos las funciones de las palabras clave estáticas y constantes en PHP5, con la esperanza de ser útiles para los amigos que están aprendiendo PHP5.
(1) estático
La palabra clave estática en una clase describe que un miembro es estático. Estático puede restringir el acceso externo, porque los miembros después de estático pertenecen a la clase y no pertenecen a ninguna instancia de objeto. Son inaccesibles para otras clases y solo son accesibles para la clase. El intercambio de instancias puede garantizar que el programa proteja completamente a los miembros. Las variables estáticas de una clase son muy similares a las variables globales y pueden ser compartidas por todas las instancias de la clase. Lo mismo ocurre con los métodos estáticos de una clase, similares a las funciones globales. Los métodos estáticos de una clase pueden acceder a las propiedades estáticas de la clase. Además, se debe acceder a los miembros estáticos mediante self. El uso de esto provocará un error.
(Para conocer las similitudes y diferencias entre esto y yo, consulte: http://blog.csdn.net/heiyeshuwu/archive/2004/11/03/165828.aspx )
(2) constante
const es una palabra clave que define una constante, similar a #define en C. Puede definir una constante. Si se cambia su valor en el programa, se producirá un error.
Dé un ejemplo del código anterior: (Nota: el siguiente código proviene de phpe.net)
<?php
class Counter
{
private static $count = 0;//Definir una propiedad estática
const VERSION = 2.0;//Definir una constante
//Constructor
función__construcción()
{
self::$cuenta++;
}
//incinerador de basuras
función __destruir()
{
self::$cuenta--;
}
//Definir un método estático
función estática getCount()
{
return self::$cuenta;
}
}
//Crear una instancia
$c = new Counter();
//Realizar impresión
print( Counter::getCount(). "<br>n" ); //Usa la entrada directa del nombre de la clase para acceder al método estático Counter::getCount
//Imprime la versión de la clase.
print( "Versión utilizada: " .Counter::VERSION. "<br>n"
?>
Bueno, básicamente en este punto, he dejado claro lo que sé en mi corazón, pero siento que todavía lo estoy. Un poco incómodo con la estática. Lo entiendo, ¡por favor dame alguna orientación!
Mi correo electrónico: [email protected]
WriteTime 2004-11-3 21:00
http://dev.csdn.net/author/heiyeshuwu/23f0d08c11bc4509b41844855d5c7063.html