一、面向对象和面向过程的区别
1.面向过程:不是技术,是一种思想,一种将流程分解成小功能,然后用函数对小功能进行封装,在使用的时候调用函数去实现。
2.面向对象:就是把构成问题的事物分解成各个对象,建立对象的目的并不是为了完成某一个步骤,而是为了描述了某个事物在解决问题过程中的行为。
二、面向对象的三大特性
- 封装性: 也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。
三种访问控制符:
a.public 表示全局的,本类内部,类外部,子类都可以访问 。
b. protected 表示受保护的,只有本类或子类可以访问 。
c. private 表示私有的,只有本类内部可以访问,外部和子类都不可以访问 。 - 继承性: 是指这样一种能力,它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。
- 多态性: 是指允许不同类的对象对同一消息作出不同的响应。;
三、构造方法和析构方法
这也是我们在对象中使用析构方法的原因。所以通常使用构造方法完成一些对象的初始化工作,使用析构方法完成一些对象在销毁前的清理工作。
1.构造方法 :
#构造方法语法格式
[权限修饰符] function __construct([参数]){
程序体
}
#主要用于对象初始化,参数可有可无
#对象创建完成后第一个被对象自动调用的方法。
# 构造的方法的名字是固定的
# 构造方法也是魔术方法的一种
2.析构方法 :
# 析构方法方法格式
[修饰符] function __destruct([参数]){
程序体
}
#对象在销毁之前最后一个被对象自动调用的方法
#用于垃圾回收工作,释放内存。例如:数据库的断开等
#不可以传递任何参数
四、$this的介绍
$this :表示当前对象,只有在类的方法中,当访问成员变量(属性)或自己的方法时,才会用到$this。