PHP entre métodos estáticos y llamada a un método no estático entre sí

llamada al método estático métodos no estáticos: el método estático de la clase, necesidad de una instancia de un objeto, y después llama al método de clase, el código de ejemplo:

class T {
    public function func () {     
        return 's to ns' ;
    }  
    public static function action () {
        return (new self())->func();
    }
}

método llamado método estático no estático: puede selfo nombres de clase ::en forma de llamadas
razones para no llamar directamente:

  • Los métodos estáticos pertenecen a la clase, como la clase se carga y cargado, el programa carga la clase cuando la memoria ha sido asignados para el método estático
  • método no estático pertenece al objeto, el objeto se crea entonces en Lei Jia
  • Método estático antes de que exista el objeto, cuando se crea un objeto, la memoria del programa se asigna, esto apunta a un puntero de objeto de acceso. método estático no se basa en las llamadas al objeto, es a través de 类名::静态方法名esta forma de llamar. Para los métodos no estáticos, será asignar memoria para cuando se crea el objeto de programa, y luego a través del objeto de método de acceso no estático
  • Cuando el objeto no está presente, no hay métodos no estáticos, métodos estáticos no llamar a un método que no existe
Publicado 80 artículos originales · ganado elogios 96 · vistas 360 000 +

Supongo que te gusta

Origin blog.csdn.net/Alen_xiaoxin/article/details/104734370
Recomendado
Clasificación