Java程序猿之面向对象(一)

  Java完全支持面向对象的三种基本特性:继承、封装和多态。Java语言完全以对象为中心,Java程序的最小程序单位是类,整个Java程序由一个一个的类组成。Java程序在系统构造中尽可能运用人类的自然思维方式。

  面向对象实际上由OOA(面向对象分析)、OOD(面向对象设计)和OOP(面向对象编程)三个部分有机组成。

  目前软件开发的两种主流开发方法:结构化开发方法和面向对象开发方法。

  任何简单或者复制的算法都是由顺序结构、选择结构和循环结构这三种基本结构组成的。

  面向对象是更优秀的程序设计方法,它的基本思想是使用类、对象、继承、封装、消息等基本概念进行程序设计,面向对象最小的程序单元是类。

  成员变量(Field),成员变量(状态数据) + 方法(行为) = 类定义

  面向对象的程序单位是类,面向过程的程序单位是函数(相当于方法)。

  面向对象封装是指将对象的实现细节隐藏起来,然后通过一些公用方法来暴露该对象的功能;继承是面向对象实现软件服用的重要手段,当子类继承父类,子类作为一种特殊的父类,将直接获得父类的属性和方法;多态是指子类对象可以直接赋给父类变量,但运行时依然表现出子类的行为特征,这意味着同一类型的对象在执行同一方法时,可能给出多种行为特征。

  对象是面向对象方法中最基本的概念,它的基本特点有:标识唯一性、分类性、多态性、封装性、模块独立性好;类是具有相同属性,共同方法的一类事物。类是对象的抽象:对象则是类的实例。而类是整个软件系统最小单元,类的封装性将各种信息细节隐藏起来,并通过公用的方法来暴露该类对外所提供的功能,从而提高类的内聚性,降低对象之间的耦合性。

  在面向对象方法中,类之间共享属性和操作的机制称为继承。继承具有传递性。继承可分为单继承(一个继承只允许有一个直接父类,即类等级为树形结构)和多继承(一个类允许有多个直接父类)。由于多继承可能引起继承结构混乱,会大大降低程序的可理解性,所有Java不支持多继承。

  关联具有一定的方向性。如果仅能从一个类单方向访问另一个类,则被称为单向关联,如果两个类直接可以互相访问对象,则称为双向关联。一个对象能访问关联对象的数目被称为多重性。

  关联和属性很像,但区别在于:类的某个属性引用另外一个实体时,变成了关联。

  聚合和组合,组合比聚合更严格。不可分割的是组合,该实体是一个实体的一部分同时又可以另外一个实体的一部分称为聚合。

  泛化和继承是同一概念,都是指子类是一种特殊的父类,类与类直接的继承关系是非常普遍的。

  除了8个基本的数据类型以外,一切都是对象。

你可能感兴趣的:(Java程序猿之面向对象(一))