Java——理解面向对象编程
一:什么是面向对象编程?架构
面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一种计算机编程架构。OOP 的一条基本原则是计算机程序是由单个可以起到子程序做用的单元或对象组合而成。OOP 达到了软件工程的三个主要目标:重用性、灵活性和扩展性。为了实现总体运算,每一个对象都可以接收信息、处理数据和向其它对象发送信息。编程语言
面向对象是由OOA(面向对象分析)、OOD(面向对象设计)、OOP(面向对象编程)三个部分组成。其中,OOA和OOD的结构须要使用一种方式来描述并记录,目前统一采用UML(统一建模语言)来描述并记录OOA、OOD的结果。函数
Java语言是纯粹的面向对象的程序设计结构,这主要表如今Java的三种基本特征:继承,封装和多态。spa
目前主流的开发方法是:结构化开发方法和面向对象开发方法。C、Basic、Pascal等都是结构化编程语言,C++、C#、Java、Ruby等都是面向对象的编程语言。设计
二:程序有哪三种基本结构?htm
顺序结构,选择结构,循环结构。对象
顺序结构:程序中的各操做是按照它们在源代码中的排列顺序依次执行的。选择结构:程序的处理须要根据某个特定的条件选择其中的一个分支执行。选择结构有单选择,双选择和多选择三种形式。循环结构:程序反复执行某个或某些操做,知道某个条件为假(或为真)时才中止循环。循环结构的基本形式有两种:当型循环和直到型循环。当型循环:先判断条件,当条件为真时执行循环体,而且在循环体结束时自动返回到循环入口处,再次判断循环条件,若是条件为假,则退出循环体到达流程出口处。先判断,后执行。直到型循环:从入口处直接执行循环,循环体结束时判断条件,若是条件为真,则返回入口处继续执行循环体,直到条件为假时退出循环体到达流程出口处,先执行后判断。继承
程序化设计中的任何结构都具备惟一的入口和惟一的出口,而且程序不会出现死循环。虽然Java是面向对象的,但Java的方法里是一种结构化顺序流。开发
三:面向对象的基本特征是什么?
采用面向对象方式开发的软件系统,最小的程序单元是类,这些类能够生成系统中的多个对象,而这些对象则直接映像成客观世界的各类事物。类表明了客观世界中具备某种特征的一类事物,这类事物每每有一些内部的状态数据,用类来封装一类事物的内部状态数据。成员变量(状态数据)+方法(行为)=类定义。
在面向过程的程序里,一切以函数为中心,函数最大。好比:骑(我,自行车);
在面向对象的程序里,一切以对象为中心,对象最大。好比:我.骑(自行车);
面向对象方法具备三个基本特征:封装(Encapsulation)、继承(Inheritance)和多态(Polymorphism)。封装指的是将对象的实现细节隐藏起来,而后经过一些公用方法来暴露该对象的功能;多态指的是子类对象能够直接赋给父类变量,但运行时依然变现出子类的行为特征,这意味着同一个类型的对象在执行同一个方法时,可能表现出多种行为特征。
面向对象还支持以下几个功能:
一、对象是面向对象方法中最基本的概念,它的基本特色有:标识惟一性、分类性、多态性、封装性、模块独立性好。
二、类是具备共同属性,共同方法的一类事物。类是对象的抽象;对象则是类的实例。而类是整个软件系统最小的程序单元,类的封装性将各类信息细节隐藏起来,并经过公用方法来暴露该类对外所提供的功能,从而提升子类的内聚性,下降了对象之间的耦合性。
三、对象间的这种相互合做须要一个机制协助进行,这样的机制称为“消息”。消息是一个实例与另外一个实例之间相互通讯的机制。
四、面向对象方法中,类之间共享属性和操做的机制称为继承。继承具备传递性。继承可分为单继承(一个继承只容许有一个直接父类,即类等级为树形结构)与多继承(一个类容许有多个直接父类)。
在Java语言中,除了8个基本数据类型以外,一切都是对象。