预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共19页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

php综合复习题大全(下)——提升篇 66.什么是OOP?什么是类和对象?什么是类属性? OOP(objectorientedprogramming),即面向对象编程,其中两个最重要的概念就是类和 对象。 世间万物都具有自身的属性和方法,通过这些属性和方法可以区分出不同的物质。 属性和方法的集合就形成了类,类是面向对象编程的核心和基础, 通过类就将零散的用于实现某个功能的代码有效地管理起来了。 类只是具备了某些功能和属性的抽象模型,而实际应用中需要一个一个实体,也就是需要 对类进行实例化, 类在实例化之后就是对象。★类是对象的抽象概念,对象是类的实例化。 OOP具有三大特点:1.封装性(又叫做隐藏性);2.继承性;3.多态性。 OOP的优点:1、代码重用性高(省代码)2、使程序的可维护性高(扩展性)3、灵活 性 67.常用的属性的访问修饰符有哪些?分别代表什么含义? private,protected,public。 类外:public,var 子类中:public,protected,var 本类中:private,protected,public,var 如果不使用这三个关键词,也可以使用var关键字。但是var不可以跟权限修饰词一起使 用。var定义的变量,子类中可以访问到,类外也可以访问到,相当于public 类前面:只能加final,abstract 属性前面:必须有访问修饰符(private,protected,public,var) 方法前面:static,final,private,protected,public,abstract 68.$this和self、parent这三个关键词分别代表什么?在哪些场合下使用? $this当前对象 self当前类 parent当前类的父类 $this在当前类中使用,使用->调用属性和方法。 self也在当前类中使用,不过需要使用::调用。 parent在类中使用。 69.类中如何定义常量、如何类中调用常量、如何在类外调用常量。 类中的常量也就是成员常量,常量就是不会改变的量,是一个恒值。 定义常量使用关键字const. 例如:constPI=3.1415326; 无论是类内还是类外,常量的访问和变量是不一样的,常量不需要实例化对象, 访问常量的格式都是类名加作用域操作符号(双冒号)来调用。 即:类名::类常量名; 70.作用域操作符::如何使用?都在哪些场合下使用? 调用类常量 调用静态方法 71.什么是魔术方法?常用的魔术方法有哪几个? 以__开头的系统自定义的方法。 __construct() __destruct() __autoload() __call() __tostring() 72.什么是构造方法和析构方法? 构造方法就是在实例化一个对象的同时自动执行的成员方法,作用就是初始化对象。 php5之前,一个跟类名完全相同的方法是构造方法,php5之后魔术方法__construct()就 是构造方法。 如果类中没有定义构造方法,那么php会自动生成一个,这个自动生成的构造方法没有任 何参数, 没有任何操作。 构造方法的格式如下: function__construct(){} 或者:function类名(){} 构造方法可以没有参数,也可以有多个参数。 析构方法的作用和构造方法正好相反,是对象被销毁时被自动调用的,作用是释放内存。 析构方法的定义方法为:__destruct(); 因为php具有垃圾回收机制,能自动清除不再使用的对象,释放内存,一般情况下可以不 手动创建析构方法。 73.__autoload()方法的工作原理是什么? 使用这个魔术函数的基本条件是类文件的文件名要和类的名字保持一致。 当程序执行到实例化某个类的时候,如果在实例化前没有引入这个类文件,那么就自动执 行__autoload()函数。 这个函数会根据实例化的类的名称来查找这个类文件的路径,当判断这个类文件路径下确 实存在这个类文件后 就执行include或者require来载入该类,然后程序继续执行,如果这个路径下不存在该文 件时就提示错误。 使用自动载入的魔术函数可以不必要写很多个include或者require函数。 74.什么是抽象类和接口?抽象类和接口有什么不同和相似的地方? 抽象类是一种不能被实例化的类,只能作为其他类的父类来使用。 抽象类是通过关键字abstract来声明的。 抽象类与普通类相似,都包含成员变量和成员方法,两者的区别在于,抽象类中至少要包 含一个抽象方法, 抽象方法没有方法体,该方法天生就是要被子类重写的。 抽象方法的格式为:abstractfunctionabstractMethod(); 因为php中只支持单继承,如果想实现多重继