为什么要初始化父类属性?底层原理是什么?

简介: 为什么要初始化父类属性?底层原理是什么?

在面向对象编程中,子类继承了父类的属性和方法。如果子类想要使用父类的属性,通常需要在子类中通过父类的构造函数进行初始化。这样可以保证子类使用父类的属性时,属性已经被正确地初始化了。

在Yii2框架中,我们常常会通过继承父类来实现自己的类。在初始化子类时,通过调用父类的init()方法,可以保证父类的属性被正确地初始化。这样可以避免在子类中再次初始化父类的属性,增加了代码冗余的风险。

相关文章
|
3月前
|
编译器 数据安全/隐私保护 C++
【类与对象】封装&对象的初始化及清理
【类与对象】封装&对象的初始化及清理
一文彻底搞懂父类引用指向子类对象问题
一文彻底搞懂父类引用指向子类对象问题
158 1
|
Java
Java面向对象(1)--对象的创建使用类的实例化
Java面向对象(1)--对象的创建使用类的实例化
76 1
lodash遍历并继承对象属性,自定义分配
lodash遍历并继承对象属性,自定义分配
124 0
|
算法 Java 编译器
如何理解对象赋值给接口的操作(关键在对象!)
如何理解对象赋值给接口的操作(关键在对象!)
如何理解对象赋值给接口的操作(关键在对象!)
|
Python
Python面向对象、类的抽象、类的定义、类名遵循大驼峰的命名规范创建对象、类外部添加和获取对象属性、类内部操作属性魔法方法__init__()__str__()__del__()__repr__()
面向对象和面向过程,是两种编程思想. 编程思想是指对待同一个问题,解决问题的套路方式.面向过程: 注重的过程,实现的细节.亲力亲为.面向对象: 关注的是结果, 偷懒.类和对象,是面向对象中非常重要的两个概念object 是所有的类基类,即最初始的类class 类名(object): 类中的代码PEP8代码规范:类定义的前后,需要两个空行 创建的对象地址值都不一样如dog和dog1的地址就不一样,dog的地址为2378043254528dog1的地址为2378044849840 8.类内部操作属性 sel
217 1
Python面向对象、类的抽象、类的定义、类名遵循大驼峰的命名规范创建对象、类外部添加和获取对象属性、类内部操作属性魔法方法__init__()__str__()__del__()__repr__()
lodash判断对象的直接或继承属性是否存在
lodash判断对象的直接或继承属性是否存在
168 0
|
设计模式
单子设计模式 (对创建初始对象为静态,构造函数私有,返回值为对象的创建函数,private应用)
单子设计模式 (对创建初始对象为静态,构造函数私有,返回值为对象的创建函数,private应用)
单子设计模式 (对创建初始对象为静态,构造函数私有,返回值为对象的创建函数,private应用)
第五周学习java 继承 在子类父类中有相同参数,子类继承分类后如何进行调用,判断创建的对象属性哪个类
第五周学习java 继承 在子类父类中有相同参数,子类继承分类后如何进行调用,判断创建的对象属性哪个类
第五周学习java 继承 在子类父类中有相同参数,子类继承分类后如何进行调用,判断创建的对象属性哪个类
C#(十六)之C#类中的成员属性 构造函数 析构函数
本篇内容记录了成员属性、构造函数、析构函数的一些基本用法。
285 0
C#(十六)之C#类中的成员属性 构造函数 析构函数