zoukankan      html  css  js  c++  java
  • PHP简述三大特性及重载、自动加载、克隆、对象遍历

    三大特性

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

    继承:子类继承父类的属性及方法,如果子类没有自己的扩展,则没有继承的必要。

    多态:在一个类中,不同的对象调用相同的方法,由于对这个方法的重新得到的结果不一样就是多态

      重载基本语法

    属性重载:

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

      

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

    类的自动加载

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

    两种办法:

      1.使用 _ _autoload 魔术函数

    2.使用spl _autoload_register 函数,可以定义多个类的链接 

    克隆

    关键字:clone

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

      浅克隆:浅克隆是指在运行克隆函数的时候,克隆的不完全,在克隆时如果被克隆类有对象中储存的是"对象"类型的话,就会形成浅克隆,并不是一个独立的个体。

    b2的两个值相同,因为b2中的值是一个对象,所有就会成为浅克隆

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

    对象遍历

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

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

     

     内部遍历:在类里面遍历,可以遍历所有属性(public,protected,pricate)

      

    在类里面加一个方法,在方法里面foreach遍历,这样就可以循环到所有的属性

     局部遍历:只遍历自己想要的值

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

  • 相关阅读:
    molloc堆区的动态内存分配
    异常控制流(csapp)
    优化程序性能(CSAPP)
    链接及链接器
    C# 继承 多态
    virtual和abstract
    封装
    SQL数据库语句优化方法
    select 查询所有和查询所有非空
    联合查询的用法
  • 原文地址:https://www.cnblogs.com/cp123/p/9152305.html
Copyright © 2011-2022 走看看