php || 面向对象编程

在这里插入图片描述

  1. 属性,方法的调用:

    类:

    <?php
            class Person{
          
             //定义Person类
    
                    //定义两个public公共属性
                    public $heigh=170;
                    public $money=0;
    
                    //定义work方法
                    function work($hours){
          
          
                            return 500*$hours;
                    }
            }
    ?>
    
    

    对象:

    <?php
    ini_set("display_errors","On");
    error_reporting(E_ALL);
            require "./person_class.php";
            $person = new Person;   //person对象实例化
            var_dump($person);      //打印person对象的属性
    
            //php对象调用属性,方法,都是使用->
            echo '<br/>';
            $a = $person->height;   //调用属性,注意,调用属性的属性前不用加$
            var_dump($a);
    
            echo '<br/>';
            $re = $person->work(8); //调用类方法
            var_dump($re);  //打印person对象的方法返回值
    ?>
    
    

    结果:
    在这里插入图片描述

  2. public,protected,private的区别:

    public 表示全局,类内部外部子类都可以访问;
    protected表示受保护的,只有本类或子类或父类中可以访问;
    private表示私有的,只有本类内部可以使用。

    类:

    <?php
            class Person{
          
             //定义Person类
    
                    //定义1个public公共属性
                    public $height=170;
    
                    //定义1个protected受保护属性(私有的属性private)
                    public $money=0;
    
                    //定义work方法
                    function work($hours){
          
          
                            $this->money = 500*$hours;//$this->money调用私有方法
                            return true;
                    }
    
                    //定义eat方法
                    function eat($eatMoney){
          
          
                            if($this->money >= $eatMoney){
          
              //判断有钱才能买东西吃
                                    $this->money = $this->money - $eatMoney;//$this->money调用私有方法。$eatMoney方法的参数。
                                    return true;
                            }else{
          
          
                                    return false;
                            }
                    }
    
                    //定义getMoneY方法
                    function getMoney(){
          
          
                            return $this->money;//返回protected受保护属性$money
                    }
            }
    ?>
    
    

    对象:

    <?php
            require "./person1_class.php";
            $person = new Person;   //person对象实例化
    
            //php对象调用属性,方法,都是使用->
            echo '<br/>';
            $a = $person->height;   //调用属性,注意,调用属性的属性前不用加$.public>对象可以直接使用
            var_dump($a);
    
            echo '<br/>';
            $re = $person->work(8); //调用类方法
            var_dump($re);  //打印person对象的方法返回值
    
            echo '<br/>';
            $re2 = $person->eat(100);       //调用类方法
            var_dump($re2); //打印person对象的方法返回值
    
            echo '<br/>';
            $re3 = $person->getMoney();     //调用类方法
            var_dump($re3); //打印person对象的方法返回值
    ?>
    
    

    结果:
    在这里插入图片描述

Guess you like

Origin blog.csdn.net/weixin_45703155/article/details/107639169