php 构造方法
来源:互联网 发布:藏剑二少捏脸数据 编辑:程序博客网 时间:2024/05/19 02:04
这是我第一次写 博文。
我想说的是php创建一个类的实例的时候,构造方法调用的问题。
php中不像java一样,创建一个class的实例的时候 会自动的首先调用父类(超类)的构造方法,以确保所有的属性都可以被正确的初始化。php 不会在本类的构造方法中再自动的调用父类的构造方法。如果真的需要调用父类的构造方法,可以手动的调用parent::__construct($params...);
class Base{
function __construct(){
//do sth here....
}
}
如果我们需要些一个Extender 来继承Base,我们需要注意的是
1、我们是否需要调用父类的构造方法用于初始化
2、我们是否需要在父类构造方法的基础上在进行其他的一些扩展操作
3、我们不需要Base构造方法中的那些初始化动作。
如果我们的Extender 只满足情况1,那么我们可以省略Extender的构造方法,因为父类的构造方法完全符合我们的要求,我们就没有必要再进行额外的编码。
如果我们的Extender 满足情况2,那么我们要在 Extender的 构造方法中 先调用parent::__construct(),先进行初始化,然后 在进行一些扩展操作
如果我们的Extender 满足情况3,我们可以选择不调用父类的构造方法。只是这样做有一个缺陷:我们再扩张Extender的时候,如果这个扩展类需要Base构造方法的初始化操作,这时候再调用parent::__construct() 只能调用 Extender的构造方法 而不能调用 Base 类的构造方法.
所以,个人认为,最好还是在 子类的构造方法中手动的调用 父类的构造方法。
- php 构造方法
- PHP构造方法
- PHP 构造方法说明
- PHP 构造方法 __construct()
- PHP 构造方法 __construct()
- php中构造方法知识点
- php面向对象-构造方法
- 浅谈PHP的构造方法
- PHP-构造方法和析构方法
- PHP----构造方法、析构方法
- php 构造方法和析构方法
- 03-php面向对象编程-构造方法
- php 类的构造方法 __construct
- php构造函数的继承方法
- PHP/Java Bridge 构造方法传参
- PHP构造方法&析构函数
- php构造json多维数组的方法
- php面向对象中的构造方法
- 2013年终总结--生活
- 算法导论 之 平衡二叉树 - 打印 - 递归[C语言]
- CString及string,char *与其他数据类型的转换和操作 .
- java 如何自定义异常 用代码展示 真心靠谱
- 让注册体验来得更简单点吧
- php 构造方法
- smarty2.x foreach 和section的使用
- 使用格式化的时候注意数字的范围
- 禁止firefox 缓存input
- smarty 的 modifier插件
- 【转】【用以自勉】哈佛大学凌晨4点半的景象
- ubuntu10.04 gedit 支持 中文 以及 打开 空文件提示段错误的解决办法【转】
- 【转载】一个老程序员和学生对作为PHP程序员的你们说的话
- 【转】Unix信号量中基础知识介绍