广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >PHP中self和static的区别
  • 458
分享到

PHP中self和static的区别

php开发语言 2023-08-31 15:08:22 458人浏览 薄情痞子
摘要

今天闲来无事,突然有个朋友问我self和static的区别?那么好,就让我来跟大家解答一下这个问题。 self :它会调用当前类的方法;通俗来说,self就是写在哪个类里面, 实际调用的就是

今天闲来无事,突然有个朋友问我self和static的区别?那么好,就让我来跟大家解答一下这个问题。

self :它会调用当前类的方法;通俗来说,self就是写在哪个类里面, 实际调用的就是这个类的方法。

static(延迟静态绑定):在PHP5.3中,加入了一个新的特性,叫做延迟静态绑定。它可以帮我们实现多态。简单来说,延迟静态绑定意味着,当我们用static关键字调用一个继承方法时,它将在运行时绑定调用类。通俗来说,static代表使用的这个类,就是你在父类里写的static,然后被子类覆盖,使用的就是子类的方法或属性。

废话不多说,直接撸代码

class Person {    public static function name ($nickname) {        echo $nickname;    }    public static function callSelf()    {        self::name('我是self里的nickname');    }    public static function callStatic()    {        static::name('我是static里的nickname');    }}class Man extends Person {    public static function name($nickname)    {        echo $nickname = '我是Man里的nickname';    }}Man::callSelf(); // 输出: 我是self里的nicknameMan::callStatic();  // 输出: 我是Man里的nickname注:如果将Man里的name注释掉,那么:Man::callStatic();将会调用父类里的name。 // 输出: 我是static里的nickname

好啦,以上就是slef和static的区别啦。如有不同理解,请多多指教。

来源地址:https://blog.csdn.net/zhouqi1427/article/details/131818663

--结束END--

本文标题: PHP中self和static的区别

本文链接: https://www.lsjlt.com/news/386102.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • PHP中self和static的区别
    今天闲来无事,突然有个朋友问我self和static的区别?那么好,就让我来跟大家解答一下这个问题。 self :它会调用当前类的方法;通俗来说,self就是写在哪个类里面, 实际调用的就是...
    99+
    2023-08-31
    php 开发语言
  • php中self和static有什么区别
    这篇文章将为大家详细讲解有关php中self和static有什么区别,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP开发环境搭建工具有哪些一、phpStudy,是一个新手入门最常用的开发环境。二、Wa...
    99+
    2023-06-14
  • PHP中$this,self,static有什么区别
    这篇文章主要讲解了“PHP中$this,self,static有什么区别”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP中$this,self,static有什么区别”吧!学习时间简单地...
    99+
    2023-06-16
  • php类中static与self的使用区别浅析
    使用 self:: 或者 __CLASS__ 对当前类的静态引用,取决于定义当前方法所在的类: 使用 static:: 不再被解析为定义当前方法所在的类,而是在实际运行时计算的。也可...
    99+
    2022-11-12
  • 浅谈Java中static和非static的区别
    关于static和非static变量的区别 static 修饰的变量称为类变量或全局变量或成员变量,在类被加载的时候成员变量即被初始化,与类关联,只要类存在,static变量就存在。非static修饰的成员变量是在对象new出来的时候划分存...
    99+
    2023-05-31
    java static ava
  • php中const和static变量有哪些区别
    这篇文章将为大家详细讲解有关php中const和static变量有哪些区别,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。区别:const一旦被定义不可更改,static修饰的变量是可以被更改的。const...
    99+
    2023-06-14
  • php中const与static有哪些区别
    这篇文章主要介绍了php中const与static有哪些区别,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php中const与static的区别:1、const只能修饰类的属...
    99+
    2023-06-08
  • Java中static和volatile关键字的区别
    1. 作用范围不同 static关键字:用于创建类级别的变量或方法,所有类的实例共享同一个static变量的副本。 volatile关键字:用于确保一个变量在多线程环境中的可见性,使所有线程都能看到最新的变量值。 2....
    99+
    2023-10-29
    关键字 区别 Java
  • vue中assets与static的区别
    vue中assets与static的区别:assets中的文件会经过webpack打包并重新编译,而static中的文件是不会经过编译的,打包后会生成dist文件夹。将图片放在assets和static中,在html页面中都可以使用,但是在...
    99+
    2022-10-06
  • java中fina和static有什么区别
    本篇文章给大家分享的是有关java中fina和static有什么区别,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Java有哪些集合类Java中的集合主要分为四类:1、List...
    99+
    2023-06-14
  • fina和static在java中有什么区别
    fina和static在java中有什么区别?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Java有哪些集合类Java中的集合主要分为四类:1、List列表:有序的,可重复...
    99+
    2023-06-14
  • C# const和static readonly区别是什么
    这篇文章主要介绍“C# const和static readonly区别是什么”,在日常操作中,相信很多人在C# const和static readonly区别是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答...
    99+
    2023-06-17
  • vue中的.capture和.self怎么区分
    今天小编给大家分享一下vue中的.capture和.self怎么区分的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。.capt...
    99+
    2023-06-30
  • vue中的.capture和.self区分及初步理解
    目录.capture和.self区分修饰符capture和selfcaptureself.capture和.self区分 capture和self主要是函数执行顺序的问题 .capt...
    99+
    2022-11-13
  • Java修饰符 abstract,static,final 的区别详解
    static 表示静态,它可以修饰属性,方法和代码块。 1.static修饰属性(类变量),那么这个属性就可以用类名.属性名来访问,也就是使这个属性成为本类的类变量,为本类对象所共有...
    99+
    2022-11-15
    abstract static final
  • PHP中const和define的区别
    一、定义方式的区别 define:define是一个函数,用于定义常量,语法格式是define(name, value, case-insensitive)。其中,name是必需的,规定常量的名称;value是必需的,规定常量的值;c...
    99+
    2023-10-29
    区别 PHP const
  • Vue-cli中静态资源管理src/assets和static/的区别是什么
    这篇文章主要介绍Vue-cli中静态资源管理src/assets和static/的区别是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!资源打包为了回答这个问题,我们需要了解web...
    99+
    2022-10-19
  • php中的self怎么使用
    这篇文章主要介绍了php中的self怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php中的self怎么使用文章都会有所收获,下面我们一起来看看吧。在PHP中,self的意思是“自己、本身”;self关...
    99+
    2023-06-29
  • php和jsp的区别
    php和jsp的区别:1、jsp是服务器端编程技术,php是服务器脚本语言。2、jsp使用java语言,用JDBC访问数据库,访问数据库的接口较统一;php访问不同的数据库采用不同的访问接口,访问数据库的接口不是很统一。3、java采用面向...
    99+
    2022-10-11
  • php和nodejs的区别
    php和nodejs的区别:1、与php相比,nodejs在性能方面更好。2、在没有控制台命令和SSH(Secure Shell)知识的情况下,用php部署小型企业和个人应用会方便。3、两者相比nodejs依赖关系较少。4、CPU需要做大量...
    99+
    2022-10-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作