欢迎来到天天文库
浏览记录
ID:34656922
大小:722.84 KB
页数:31页
时间:2019-03-08
《08.php5.6.6自学笔记 类与对象》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第8章类与对象8.1类和对象的关键概念PHP5中的新特性包括访问控制,抽象类和final类与方法,附加的魔术方法,接口,对象复制和类型约束。PHP对待对象的方式与引用和句柄相同,即每个变量都持有对象的引用,而不是整个对象的拷贝。参见对象和引用。Tip请参见用户空间命名指南。8.1.1类class类是具有相同特性的对象的集合,这里的特性是指同一类对象具有相同的属性、相同的方法,遵循相同的规则。比如人类:男人、女人、老人、小孩都具有相同的“人”这一特性;而不同的只是其中的一些属性,如它们都有各自的“身高”和“体重”。在OOP术语
2、中,实体的性质和行为的具体定义称为类(class)。1.创建一个新类classclass类名{var$temp;//属性function方法名(参数1,参数2.....){方法的具体操作}在定义类的时候属性和方法的数量是没有限制的。使用关键字class即可创建一个类。类名可以是任何非PHP保留字的合法标签。一个合法类名以字母或下划线开头,后面跟着若干字母,数字或下划线。一个类可以包含有属于自己的常量,变量(称为“属性”)以及函数(称为“方法”)。8.1.2对象object在类的基础之上创建实体的特定实例,这些特定实例称为对
3、象(object)。创建对象的过程称为实例化,当对象被创建时,就包含了3个特性:对象的句柄、对象的属性和对象的方法。对象的句柄:用于区分不同的对象。对象创建好后,将会获取一块存储空间,存储空间的地址即为对象的标识,也就是对象的句柄。对象的属性:用于描述对象的静态特性(属性),例如人的姓名、身高、体重等属性。对象的方法:用于描述对象的动态特性(方法),例如人可以走路、说话、工作等行为特性。实例化语法new:$对象的名称=new类名称();例:$human=newhuman();这样,$human就具有了human类的一切特性。当h
4、uman类这个对象被创建时,它就存在于程序的生命周期内;当程序结束或所创建对象被清除后,这个对象就会被销毁。创建一个新的且唯一的对象:&可使用“&”引用符号,示例代码如下:$对象的名称=new&类名称();调用属性和方法->:调用该对象中的成员属性和方法当类被实例化以后,可使用操作符“->”来调用该对象中的成员属性和方法。例:
5、o"";}functionlike($like){echo'我喜欢'.$like;echo"";}}//实例化后的第一个对象$man=newhuman();$man->name='Jim';//human类中的$name$man->height='183cm';echo'我的名字是'.$man->name.'我的身高是'.$man->height.'';$man->work('程序员');$man->like('篮球');echo'
6、ewhuman();$woman->name='Lily';$woman->height='170cm';echo'我的名字是'.$woman->name.'我的身高是'.$woman->height.'';$woman->work('美工');$woman->like('画画');?>输出:我的名字是Jim我的身高是183cm我的工作是程序员我喜欢篮球我的名字是Lily我的身高是170cm我的工作是美工我喜欢画画类成员的访问控制通过对类的成员添加关键字public、protected或provite来实现对
7、类中成员的访问控制。如果没有设置这些关键字,PHP将自动解析为public。public:被public定义的类成员可以在任何地方被访问。protected:被protected定义的类成员可以被其所在类的子类和父类访问。private:被private定义的类成员只能在类的内部被访问。8.1.3属性伪变量$this当一个方法在类定义内部被调用时,有一个可用的伪变量$this。$this是一个到主叫对象的引用(通常是该方法所从属的对象,但如果是从第二个对象静态调用时也可能是另一个对象)。如:在类human中定义$name和$he
8、ight字段(属性),在human中可使用$this->name来访问$name。属性类的变量成员叫做“属性”,或者叫“字段”、“特征”,在本文档统一称为“属性”。属性声明是由关键字public,protected或者private开头,然后跟
此文档下载收益归作者所有