两种函数调用方式有什么区别,他们各有什么特点

两种函数调用方式有什么区别,他们各有什么特点

getInstance::classA->function()

repos->funnction()有什么区别



正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小尤 2019-12-16 18:21:18

同学你好,同学描述的是否是:: 与 -> 调用的方式的区别,如果是,则其中不同为:

在外部的时候,->是实例化类调用,通过实例化对象调用类中方法,而::是静态调用,调用静态方法的,通过类名调用类中静态方法。如:

class Mytest{
    public static  function test($str){
        echo $str;
    }
    public function test1($str){
        echo $str;
    }
}
Mytest::test("::调用静态方法");
// Mytest::test1("::调用普通方法");  // 报错
$object = new Mytest();
$object->test("->调用静态方法");
$object->test1("->调用普通方法");

总结:

    1. 类名::静态方法                  可以
    2. 类名::普通方法                  不可以(报错)
    3. 实例化对象->静态方法     可以
    4. 实例化对象->普通方法     可以

如果不是,请同学重新描述一下。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

  • 提问者 慕容4082621 #1
    不是这个意思,我是想问repos->funnction() 为什么可以用repos调用函数,这是某种框架下的用法还是有别的特殊含义
    2019-12-16 19:40:07
  • guly 回复 提问者 慕容4082621 #2
    你好,不是某种框架下特定的用法,是通过实例化对象后调用的方法,如果解决您的问题请采纳,祝学习愉快!
    2019-12-17 09:40:20
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
PHP典型功能与Laravel5框架开发
  • 参与学习           人
  • 解答问题       722    个

掌握开发中必备技能解锁缓存、支付,邮件和短信发送等高端接口运用,直击工作重难点,通过开发简书项目熟练掌握Laravel5的开发技术。完成以上三个阶段的学习,成为满足企业需求的开发工程师。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师