tp _initialize() 区别 __construct()「建议收藏」

tp _initialize() 区别 __construct()

大家好,又见面了,我是全栈君。

• _initialize()方法是在任何方法执行之前,都要执行的,当然也包括_ _construct构造函数。 也就是说如果存在_initialize()函数,调用对象的任何方法都会导致_initialize()函数的自动调用,
而_construct构造函数仅仅在创建对象的时候调用一次,跟其它方法调用没有关系。
• _ _construct这里是双划线,而_initialize()函数是单划线
• 如果父子类均有_initialize()函数,则子类覆盖了父类的,如果子类没有而父类有,则子类继承父类的。
• 默认情况下,子类的构造函数不会自动调用父类的构造函数。在调用子类对象的_initialize()时,也不会导致自动调用父类的_initialize()
• 实际编写子类的构造函数时,一般都要加上父类构造函数的主动调用parent::_ _construct(),否则会导致子类对象空指针的异常,如Call to a member function assign() on a
non-object。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/112023.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • git提交代码流程

    git提交代码流程使用git也快有两年了,今天将常用命令总结一下,我描述一个整个的开发流程架构师在gitlab上新建了一个项目,搭好了框架1.我作为开发者之一,首先gitclonehttps://xx用idea打开项目,然后点开idea下面的console,在这里面执行git命令刚进来自然是master分支,然后我们首先创建一个自己的分支并切换过去,命令如下gitcheckout-…

    2022年6月29日
    37
  • PHP审计之Duomicms审计

    PHP审计之Duomicms审计前言废话不多说,开冲代码审计任意文件写入定位漏洞代码admin/admin_ping.phpif($action=="set"){$

    2021年12月13日
    42
  • linux 文件重命名的命令是什么_linux移动文件并重命名

    linux 文件重命名的命令是什么_linux移动文件并重命名就目前所知道的知识,有两种方法。一、rmrm命令最简单,也更好掌握。形如:rmoldnamenewname二、renamerename命令更加健壮,不仅支持普通的文件重命名,而且还支持模式匹配。在开发速度上给我们带来了很大的便利。形如:renamefromnametonamefilenames相关例子可以参考有关文章–linux下rename用法(批量重命名)

    2022年9月10日
    0
  • Python入门教程 超详细1小时学会Python

    Python入门教程 超详细1小时学会Python为什么使用Python假设我们有这么一项任务:简单测试局域网中的电脑是否连通.这些电脑的ip范围从192.168.0.101到192.168.0.200.思路:用shell编程.(Linux通常是ba

    2022年7月3日
    23
  • 一条语句改变进度条颜色及去掉进度条边框

    一条语句改变进度条颜色及去掉进度条边框 一、        改变进度条颜色 在VC里想改变进度条颜色,在网上找了很多方法,都很麻烦,觉得很郁闷。后来想起在用VB做时,增经用API实现过,很简单。后来再一查,原来是SendMessage这个函数,几经试验,终于成功,高兴,与大家分享!!!!      代码如下:          m_Progress1.SendMessage(PBM_SETBKCOLOR,0,R

    2022年7月14日
    12
  • Ubuntu 18.04通过deb安装cuda 10.2

    Ubuntu 18.04通过deb安装cuda 10.2wgethttps://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pinsudomvcuda-ubuntu1804.pin/etc/apt/preferences.d/cuda-repository-pin-600wgethttps://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installer

    2022年5月9日
    68

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号