zoukankan      html  css  js  c++  java
  • 面向对象---特----性

     

    面向对象:是基于面向过程的一种思想。

    面向过程:强调的是功能行为。 

    面向对象:将功能封装进对象,强调具备了功能的对象。面向对象是基于面向过程的。 

    面向对象的三大特性:封装,继承,多态

    封装   将功能封装成一个个独立的单元,减小耦合,避免牵一发而动全身,方便对程序的修改

    继承   代码重用,减少编码量,间接减少维护成本。

     

    封装好处:

           1.将变化隔离;

           2.便于使用。

           3.提高重用性。

           4.提高安全性。

    封装原则:

           将不需要对外提供的内容都隐藏起来。

           把属性都隐藏,提供公共方法对其访问。

    private:关键字

           A:用于修饰成员变量和成员方法。
           B:被修饰的内容在其他类中是不可以被访问的。

    注意:私有仅仅是封装的一种体现而已。

     

          第一种理解方式:

    封装:

       首先,属性可用来描述同一类事物的特征, 行为可描述一类事物可做的操作,

    封装就是要把属于同一类事物的共性(包括属性与行为)归到一个类中,以方便使用.

    比如人这个东东,可用下面的方式封装:

    {

    年龄(属性一)

    身高(属性二)

    性别(属性三)

     

    做事(行为之一)

    走路(行为之二)

    说话(行为之三)

    }

     

    继承:

    由于封装,使得有共同特征的一类事物的所有描述信息都被归于一类之中,但我们

    知道,这并不是万能的,有些事物有共性,但还存在区别,比如教师,简单封装起来如

    :

     

    教师{

     

    年龄(属性一)

    身高(属性二)

    性别(属性三)

     

    做事(行为之一)

    走路(行为之二)

    说话(行为之三)

     

     教书(行为之四)

    }

     

    上面对"教师"的封装,与对"人"的封装基本上差不多,只是多了一个特征行为:教书,

    教师有与人一样的共性, 但我们不能说"人教书",也就是不能把教书封装到"人"

    之中去,教书是教师的特征行为之一. 为了省事地封装教师(代码的复用,这只是继

    承存在的原因之一), 可以让教师去继承人,

    :

    教师 extends 人{

        教书(

            行为之三

            )

    }

    这样,我们就不用重新定义那些已经被"人"这一个类所封装的那些属性与行为了,

    而只需要使用继承的方式,在人的基础上拓展教师专有的行为,即"教书"即可把教

    师描述出来;这样的结果, 即是教师也同时拥有"人"之中所封装的一切属性与行为,

    还拥有自己的特征行为"教书".

     

     

    一、封装性
    封装就是把抽取出来的数据和对数据的操作封装在一起,数据被保护在内部,程序的其他部分只有被授权的操作(方法)才能对数据进行操作。

    php提供了三种访问控制修饰符
    public 表示全局,公共的,本类内部,类外部,子类都可以访问
    protected 表示受保护的,只有本类或子类可以访问
    private 表示私有的,只有本类内部可以访问
    以上三种修饰符既可以修饰方法也可以修饰属性(变量),方法如果没有访问修饰符则默认是public,成员属性必须指定访问修饰符。

     

     

     

     

     

     

     

  • 相关阅读:
    网络拓扑
    OSI 7层模型和TCP/IP 4层模型
    第一范式 第二范式 第三范式 BC范式 第四范式
    医院 信息科
    李纳斯•托瓦兹
    所谓绅士,就是做自己该做之事,而不是想做之事。
    活着
    开头词
    人际题目
    人际关系
  • 原文地址:https://www.cnblogs.com/jiaoaozuoziji/p/7384421.html
Copyright © 2011-2022 走看看