PHP简述三大特性及重载、自动加载、克隆、对象遍历

三大特性

封装:把私有属性提供一个公共的访问方法,其特色是安全性高。

继承:子类继承父类的属性及方法,若是子类没有本身的扩展,则没有继承的必要。

多态:在一个类中,不一样的对象调用相同的方法,因为对这个方法的从新获得的结果不同就是多态

  重载基本语法

属性重载:

  含义:若是使用一个不存在的属性,就会自动调用类中预先定义好的某个方法以处理数据

  

方法重载:若是使用一个不存在的方法,就会自动调用类中预先定义好的某个方法以处理数据

类的自动加载

含义:在须要一个类的时候,自动获取类名,并引入文件

两种办法:

  1.使用 _ _autoload 魔术函数

 

2.使用spl _autoload_register 函数,能够定义多个类的连接 

克隆

关键字:clone

含义:克隆分为浅克隆和深克隆,他们的区别在于浅克隆不能克隆对象,若是使用深克隆要用到_clone魔术方法,默认是浅克隆

  浅克隆:浅克隆是指在运行克隆函数的时候,克隆的不彻底,在克隆时若是被克隆类有对象中储存的是"对象"类型的话,就会造成浅克隆,并非一个独立的个体。

 

b2的两个值相同,由于b2中的值是一个对象,全部就会成为浅克隆数组

  深克隆:手动用魔术方法将一个对象的全部属性数据完全复制(就是补充浅克隆复制不了的数据)

对象遍历

对象的变量经过foreach来遍历:

  外部遍历:在类外面遍历,只能遍历公共的属性:修饰符为 public 的属性

 

 内部遍历:在类里面遍历,能够遍历全部属性(public,protected,pricate)

  

在类里面加一个方法,在方法里面foreach遍历,这样就能够循环到全部的属性安全

 局部遍历:只遍历本身想要的值

给方法追加一个形参,带表上面的全部属性,在遍历里面加判断,判断数组里面是否有值函数

相关文章
相关标签/搜索