php必知的16个编程法则(重蔚php学习第三十七天笔记)
php必知的16个编程法则(重蔚php学习第三十七天笔记)兼容构造方法对对象属性进行初始化在类去实例化对象成功之后,会被自动调用的方法原理:当对象被初始化完成之后,对象都会跑会对应类空间去找构造方法__construct(),如果有则执行,没有则不执行而已。构造方法有什么意义?
魔术方法魔术方法指的是,系统已经为用户提前有声明好,但是需要用户显示的写出来的方法。魔术方法会在某些情况发生的时候,自动被调用。
魔术方法通常以__开头(不是用户定义的以__开头的函数称之为魔术方法)
构造方法
语法:__construct()
在类去实例化对象成功之后,会被自动调用的方法
原理:当对象被初始化完成之后,对象都会跑会对应类空间去找构造方法__construct(),如果有则执行,没有则不执行而已。
构造方法有什么意义?
对对象属性进行初始化
兼容构造方法
兼容的通常做法
课堂作业:
1.新建一个Person类
2.在创建对象的时候,会自动对对象的属性进行初始化
析构方法
在对象被销毁的时候会自动调用的方法
语法:__destruct()
虽然只创建一个对象,但是析构方法也会被执行。原因是因为在脚本结束之后,系统会释放所有的变量,包括$person
有哪些方法可以销毁对象?
1.脚本执行结束,对象肯定被销毁
2.对象说白了还是变量,unset即可
3.改变变量的值
析构方法有什么用?
释放资源
如果定义了构造方法,但是使用private进行修饰,会是什么结果?
会报错,因为对象是在类外部创建的,而对象去调用一个私有的构造方法,所以会报错。