关于调用受保护方法问题

来源:2-7 PHP类和对象之访问控制

一步丶听

2016-07-02 16:39

 “$this->speedUp();”和“  return self::speedUp();”执行结果为啥一样,都是对的???

   //增加start方法,使他能够调用受保护的方法speedUp实现加速10
    public function start(){
    // $this->speedUp();
      return self::speedUp();
    }


写回答 关注

5回答

  • 爱尚丽明
    2016-07-23 15:59:59


    你现在用的是public。只是说$this不能再static静态方法中使用


  • 一步丶听
    2016-07-04 09:38:34

    this,self,parent 三个关键字之间的区别。从字面上来理解,分别是指这、自己、父亲。

    先初步解释一下,

    this是指向当前对象的指针(可以看成C里面的指针),self是指向当前类的指针,parent是指向父类的指针。

    共 1 条回复 >

  • weibo_暐暐博_0
    2016-07-03 15:59:40

    "$this->"不能用于访问静态成员,'self::'可替代'$this->'用于访问类自身的方法,也用于访问自身的静态成员和常量;但不能用于访问自身属性。

  • 一步丶听
    2016-07-02 17:45:35

     “$this->”不是一般用于public类型,“  return self::”不是一般用于静态类型?

    爱尚丽明

    你现在用的是public。只是说$this不能再static静态方法中使用

    2016-07-23 15:59:21

    共 1 条回复 >

  • Hello_World丶
    2016-07-02 17:34:57

    一个是调用方法,一个是返回自身的方法  结果肯定一样呀

    慕仔8740... 回复一步丶听

    $this->表示当前所在的类。return则是返回值到函数上,代码逻辑怎么写是自己的事,不存在固定的

    2016-08-26 15:55:42

    共 2 条回复 >

PHP进阶篇

轻松学习PHP中级课程,进行全面了解,用PHP快速开发网站程序

181724 学习 · 2575 问题

查看课程

相似问题