• php 面向对象封装和继承


    面向对象的封装性:
    1,就是把对象的成员(属性,方法)结合成一个独立的相同单位,并尽可能隐藏对象的内部细节
    public protected
    private 私有的,用这个关键字修饰的成员,只能在对象内部访问(只有用$this访问),不能在对象外部使用
     
    属性可以封装:
    只要一个变量,需要在多个方法使用,就将这个变量声明为成员属性,可以直接在这个对象中的所有方法中使用。成员属性,就相当于这个对象中的全局变量。成员属性都会在方法中使用,成员属性值的变化其实就是在改变方法的执行行为,也就是改变了对象的功能,成员属性的值如果不正常,方法执行的功能也就不正常了。
    作用:不需要在对象外部改变或读取它的值,可以在类中提供一个公有的方法,经过方法对象就可以对成员属性进行赋值和取值等操作。
     
    方法也可以封装:
    使用private修饰使其只能在内部使用,只要留几个对外方法就可以了!
     
    和封装有关的魔术方法:
    __set():是直接设置私有成员属性值时,自动调用的方法
    __get():是直接获取私有成员属性值时,自动调用的方法
    __isset():查看对象中私有属性是否存在时自动调用这个方法
    __unset():直接删除对象中私有属性时,自动调用的方法
     
    继承
    1.PHP 对象模型使用了继承。继承将会影响到类与类,对象与对象之间的关系。

    比如,当扩展一个类,子类就会继承父类所有公有的和受保护的方法。除非子类覆盖了父类的方法,被继承的方法都会保留其原有功能。

    继承对于功能的设计和抽象是非常有用的,而且对于类似的对象增加新功能就无须重新再写这些公用的功能。

    2.php中是单继承,有且只能有一个父元素

    PHP中使用extends单一继承的方法

    PHP的构造函数可以被继承,但是如果子类也定义了构造函数,则父类的被覆盖

    子类中将父类的函数进行重新的定义,叫重写
  • 相关阅读:
    在做5道习题,个别习题有难度,需要很多天,加油把自己,有看到这个随笔的小伙伴评论可以留言讨论或发出你的答案~
    python中的open、close、read、write、len、exists
    python中的type
    python中strip、startswith、endswith
    python3_learn 实现文件夹内批量对图片重命名
    [转载]利用分块传输绕过WAF进行SQL注入
    bypass安全狗测试学习
    [转+自]SSH工作原理
    NCTF2019 小部分题解
    XML外部实体注入[转载]
  • 原文地址:https://www.cnblogs.com/zx997/p/7189974.html
Copyright © 2020-2023  润新知