课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
面向对象编程开发是目前互联网软件编程行业中的主要开发方式,而今天我们就一起来了解一下,面向对象编程都有哪些基础知识是需要我们了解和掌握的。
1、声明:class类名{
//成员属性(变量)修饰符$变量名=初值;
//成员方法(函数)修饰符function函数名(){执行;}
}
2、生成类对象:$对象名=new类名();//也可以不加括号
3、访问类成员:$对象名->成员名;//成员为成员属性时不加$
4、类的内部访问:$this->成员名;//不可直接用成员名,this表示当前类,self表示类名
5、修饰符:private私有的,不可使用对象直接访问,只能本类内部访问
protected保护的,只能本类和本子类内部使用
public公有的,默认,类内外部均可用
final终的,修饰类时不可被继承,修饰的方法不可被覆盖,不修饰成员变量
static静态的,共用类成员,访问时不可用对象访问,类名::静态成员
const类常量,只能修饰类变量,声明赋初值,不可改值,访问:类名::类常量名
6、构造方法:function__construct(形参){执行;}//对象创建时一个自动调用的方法
//也可为方法名和类名相同的方法;两个同时存在时系统调用__construct()
//构造方法有形参时创建对象时不传递会有警告
7、析构方法:function__destruct(){执行;}//对象消亡时后一个自动调用方法
8、变量名调用类变量,可变变量法:
9、魔术方法:
成员变量为私有的(private),使用$对象名->成员变量名时自动调用如下函数:
function__get($属性名){}//属性名字,使用也是与可变变量相同;
function__set($属性名,$属性值){}//在外设置私有变量时自动调用
function__isset($属性名){returnfalse…;}//在外使用isset函数判断私有变量时自动调用
function__unset($属性名){}//在外使用unset函数删除私有变量时自动调用
function__toString(){return“输出值”}//必须返回字符串值,echo$对象名;时自动调用
function__call($函数名,$实参数组名){}//对象所调用函数不存在时自动进入
staticfunction__callstatic($函数名,$实参数组名){}//5.3版本,类调用静态函数不存在时自动进入
function__invoke($形参){};//5.3版本,在对象名(“实参”);时自动调用
10、魔术变量:
1)__CLASS__当前类名
2)__METHOD__当前类方法
11、克隆对象:
对象引用:$新对象名=$原对象名;//并为参数新对象,只是指针指向同一处
克隆:$新对象=clone$原对象;//正真的两个对象
自动调用函数:function__clone(){$this->新对象成员;}//可初始化新对象
12、继承:class子类名extends父类名{}//访问时直接子类对象调用
private成员不可被子类内外使用,私有不继承
成员名相同则覆盖,子类优先,子类内部使用parent::成员名;调用父类成员
覆盖时权限只能大于或等于原权限
继承要调用父类构造方法:子类构造方法一行写parent::__construct(实参);
13、判断变量是否属于某类:$对象名instanceof类名;//返回bool
14、类的序列化(串行):$序列化字符串名=serialize($原对象名);//对象转字符串,字符串包含所有
function__sleep(){returnarray(成员变量,成员变量);}//自动调用,返回需串行化变量
15、类的反序列化:$新对象名=unserialize(“序列化字符串”);//字符串转对象
function__wakeup(){}//自动调用,可初始化类变量
16、抽象类:修饰符为abstract,不一定要有抽象方法
17、抽象方法:声明一个方法没有方法体//没有大括号{},修饰符为abstract,一定在抽象类里
18、抽象类的继承:子类必须全部实现父类的全部抽象方法,否则不可创建对象
19、接口:interface接口名{}//方法必须全是抽象方法,成员属性必须全是const量,权限必须是public
20、接口的继承:接口继承接口,是对父接口的扩展新方法和新属性
21、接口的实现:class类名implements接口1,接口2{}
22、解析字符串代码:$字符串1="echo'ttt';";eval($字符串1);//执行输出ttt
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。