Metodos y propiedades estaticas entre clases

Todas las clases conllevan a tener su propios Métodos y propiedades estáticas entre cada una de las clases, en este ejemplo mostrare como efectuar la herencia de dicho métodos/propiedades entre dos clases ademas del uso básico de los mismo.

aquí el código.




<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Metodos y propiedades estaticas</title>
    <!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
</head>
<body>
    <section>
     
        <?php
//metodos privilegiados
            class Persona{
          protected  $nombre;
          protected $edad;
          protected $apellido;
     
                //propiedad static
                public static $color="Rosado";
       
              //buca describir
                function __construct($nombre,$apellido,$edad){
                    $this->nombre=$nombre;
                    $this->apellido=$apellido;
                    $this->edad=$edad;
                 
                }
                                             
                function saludar(){
                    echo "Hola".$this->nombre.", ¿Como Estas $this->nombre?";
                }
             
                function getNombre()
                {
                    return $this->nombre;
                }
             
                function setNombre($nombre)
                {
                    $this->nombre=$nombre;
                }
             
                private function metodo1()
                {
                    echo "Metodo1<br>";
                }
             
                private function metodo2()
                {
                    echo "Metodo2<br>";
                }                        
             
             
                //funcion estatica
                public static function Hi()
                {
                    return "Hellow<br>";
                }

                public function EjecP()
                {
                    return static::$color;
                }
                //self
                 public function EjecP2()
                {
                    return self::Hi();
                }
             
             
         
            }//fin class perosna

        //creando class hermano
        //heredando class persona
     
        class Hermano extends Persona{
         
            function presentacion(){
                echo "Nombre: $this->getNombre()";
            }
         
            public function execute(){
                return $this->$color;
            }
            //parent
            public function ejecutar2(){
                return parent::$color;
            }
         
            public function ejecutar3(){
                return parent::Hi();
            }
        }
     
$Nicolla = new Persona('Nicolla','S.',15);
$hermano = new Hermano('Oscar','S.',5);  

       //static declara metodos y propiedades etstaicas
    //  pro
        echo Persona::$color."<br>";
        echo $Nicolla::$color."<br>";
         //self
        echo $Nicolla::Hi();
     
        echo $Nicolla::EjecP();
        echo $Nicolla::EjecP2();
        //parent:: acceder de una clase padre a sublaces pro o metodfo
        echo $hermano->execute()."<br>";
        echo $hermano->ejecutar2()."<br>";
        echo $hermano->ejecutar3()."<br>";
     
     
     
        ?>
     
    </section>
</body>
</html>





PHP

Comentarios

Entradas más populares de este blog

Ejemplo de suma Pascal

Solucion al error collation desconocida: 'utf8mb4_0900_ai_ci'