Buenas, no entiendo bien este concepto de las declaraciones estaticas,
Si tengo esto:
Código PHP:
class Prueba {
protected static $var = 1;
protected static function metodo() {
return self::$var;
}
public static function getConstant(){
return self::metodo();
}
public function saludo(){
return 'Hola mundo';
}
}
cuando accedo a el metodo getConstant de esta manera:
Código PHP:
echo Prueba::getConstant(); //esto me imprime '1'
y si hago:
Código PHP:
$saludos = new Prueba();
echo $saludos->getConstant(); // Me imprime tambien '1'
Ademas de esto, cuando hago:
Código PHP:
echo Prueba::saludo(); // Imprime 'Hola mundo' sin ser metodo estatico
Entonces no entiendo para que utilizar metodos y atributos estaticos si cuando creo la instancia de la clase de igual manera puedo acceder a ellos, aun cuando la documentacion dice que no se puede, me podrian aclarar esto, o en que estoy equivocado???
Gracias.