PHP之面向对象篇

  1.面向对象到底是什么?

     通常我们把一个类的实例化叫对象,这种对象严格的说应该是面向对象的编程实现(OOP)中的对象,面向对象的编程。对象的定义是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。

  在这里要提到一个结构化编程;

    结构化程序设计方法主张按功能来分析系统需求, 原则有 自顶向下, 逐步求精, 模块化等.

    笼统来讲,就是建立对象模型,将问题域化为不同的对象进行处理。

  2.什么是类和对象?

    类是用来描述一个对象,
    类描述了每个对象应包括的数据
    类描述了每个对象的行为特征
    类是对一类事物描述,是抽象的,概念上的定义;

    对象是实际存在的该类事物的每个个体。

  3..类与对象的关系:

    简单来讲,类是对象的抽象,对象是类的实例

例如:

  class RenLei{
    //属性
    public name;
    //行为
    function useTools(){ //shiYongGongJu
    }
  }

  4.除此之外,面向对象方法还有三个基本特征:

  封装性:将对象的实现细节隐藏起来, 通过一些公共的接口方法来供外部调用对象的功能.

   继承性:是面向对象实现的的重要手段,子类继承父类, 子类直接获得父类的非private属性和方法.

   多态性:子类对象可以赋值给父类对象引用, 但运行的时候仍然表现出子类的行为特征,同一个类型的对象在执行同一个方法时, 可能表现出不同的特征.

  5.面向对象的步骤

    面向对象是一种思想,它让我们在分析和解决问题时,把思维和重点转向现实中的客体中来,然后通过面向对象语言来实现这种联系。

    面向对象分为三个步骤:

      OOA:面向对象的分析
      OOD:面向对象的设计
      OOP:面向对象的编程

      1、首先是分析需求,先不要思考怎么用程序实现它,先分析需求中稳定不变的客体都是些什么,这些客体之间的关系是什么。

      2、把第一步分析出来的需求,通过进一步扩充模型,变成可实现的、符合成本的、模块化的、低耦合高内聚的模型。

      3、使用面向对象的实现模型 

  

时间: 2024-10-21 01:53:16

PHP之面向对象篇的相关文章

〔C# Note〕面向对象篇

面向对象编程的三大特点:封装,继承,多态. 一.封装 封装就是把数据组合在一起,形成一个对象.将类封装了以后,对外提供可访问的属性和方法,外部对象通过这些属性和方法访问此对象的信息. 类是支持对象封装的工具,对象则是封装的基本单元. 封装的好处: 1.良好的封装能够减少耦合. 2.类内部的实现可以自由地更改. 3.类具有清晰的对外接口. 封装性主要由访问修饰符来控制. 在这里有五个访问修饰符,public,private,protected,internal,protected internal

PHP之面向对象篇(3)

这次接着上一篇来讲: 面向对象的三大特征,之前已经讲了1个了,现在讲后2个:封装.多态 1.什么是封装?和pulic类似的访问修饰符分别有什么作用? 所谓封装,就是类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行'信息隐藏'(优点). * 把对象的属性和行为结合成一个独立的相同单位,并尽可能隐藏对象的内部细节. 封装是面向对象的特征之一,是对象和类概念的主要特性. * 封装的原则在软件上的反应是: 要求使对象以外的部分不能随意存取对象的内部数据(属性),从而有效的避免了外部错误对

PHP之面向对象篇(2)

1.什么是构造函数? 构造函数( __construct() )是一种特殊的成员函数,与其他成员函数不同,不需要用户来调用它,而是在建立对象时自动执行. 在(PHP4.0)构造函数的名字必须与类名同名,而不能由用户任意命名,以便编译系统能识别它并把它作为构造函数处理.它不具有任何类型,不返回任何值. (PHP5.3.3在命名空间中,与类名同名的方法不再作为构造函数) 构造函数的功能是由用户定义的,用户根据初始化的要求设计函数体和函数参数.具有构造函数的类会在每次创建新对象时先调用此方法,所以非常

Javascript面向对象篇

1 表达式的概念 广义的概念:所有返回的一段代码块,都可以成为表达式.比如: var a=0; var a, b; a = 0;这个表达式的返回值为0; b = a;这个表达式的返回值为a; 赋值表达式的返回值为=右边的值; 2  面向对象的概念: 一种编程思想.核心:在解决任何问题的时候,首先试图去找到一个对象来帮助解决问题. 优点: 身份:调度者; 代码的灵活度高; 可维护性高; 可扩展性高; 缺点: 可能造成代码的复杂度提高 可读性相对不好 3  面向过程: 身份: 执行者 顺序: 一般情

[js笔记整理]面向对象篇

一.js面向对象基本概念 对象:内部封装.对外预留接口,一种通用的思想,面向对象分析: 1.特点 (1)抽象 (2)封装 (3)继承:多态继承.多重继承 2.对象组成 (1)属性: 任何对象都可以添加属性,(如右侧示例可弹出arr.a为12 var arr=[1,2,3];arr.a=12;alert(arr.a) 全局变量是window的属性, 1 <script> 2 window.a=12; 3 window.onload=function() 4 { 5 alert(a); 6 } 7

python——面向对象篇之异常和反射

内置函数isinstance和issubclass 1.1 isinstance用法: 1 isinstance(string,str) 判断第一个参数是否是第二个参数的子集,例如: 1 print isinstance("test",str) #判断test是否是字符串类型 2 3 C:\Python27\python.exe D:/python/s11/8day/反射/test.py 4 5 True 6 7 8 print isinstance(123,int) #判断123是否

js面向对象篇(一)

Javascript是一种基于对象(object-based)的语言,你遇到的所有东西几乎都是对象.但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有class(类). ----摘自阮一峰老师的博客 当然现在的es6中已经有了class,去声明一个类,让js看上去更像是一个面对对象编程的语言 那么问题来了什么是面向对象呢?其实js是有很多种写法的,我们平时一般写的程序都是面向过程式的,就像这样 var a = 1; function show(opt){ alert(opt)

面向对象篇(四)

function CreatePerson(name){ this.name = name; this.showName = function(){ alert(this.name); } } var p1 =new CreatePerson('张三'); p1.showName(); //张三 var p2 =new CreatePerson('李四'); p2.showName(); //李四 上面的代码,看似没有什么问题,我们来看一个问题 console.log(p1.showName =

面向对象篇

1.面向过程与面向对象的简介 面向对象(Object Oriented,OO)是软件开发方法.面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统.交互式界面.应用结构.应用平台. 分布式系统.网络管理结构.CAD技术.人工智能等领域.面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术 [1]  发展到一定阶段后的产物. 1.1 面向过程 面向过程的程序设计:所谓的面向过程,指的是解决问题的步骤,先做什么再做什么, 而面向过程设计就好比,精心设计好一条流水线,是一种机械式的