面向对象
*面向对象和面向过程的区别
- -面向过程:主要的关注点是实现具体的过程,因果关系【集成显卡的开发思路】
*优点:对于业务逻辑比较简单的程序,可以达到快速开发,前期投入成本较低
*缺点:采用面向过程的方式开发很难解决非常复杂的业务逻辑,另外面向过程的方式导致软件元素之间的“耦合度”非常高,只有其中一环出现问题,整个系统将受到影响,导致最终的软件“扩展力”差。另外,由于没有独立体的概念,所以无法达到组件复用。
- -面向对象:主要的关注点是对象【独立体】能完成哪些功能。【独立显卡的开发思路】
*优点:耦合度低,扩展力强。更容易解决现实世界当中更复杂的业务逻辑,组建复用性强。
*缺点:前期投入成本较高,需要进行独立体的抽取,大量的系统分析与设计。
-C语言是纯面向过程的、C++半面向对象、Java纯面向对象
-现在出现的一些新的编程语言多数都是面向对象的,面向对象更符合人的思维方式。
*面向对象的语言的三大特征
-封装
-继承
-多态
*采用面向对象的方式开发一个软件的生命周期:
*面向对象的分析:OOA
*面向对象的设计:OOD
*面向对象的编程:OOP
*类和对象的概念
*什么是类?
-
-类在现实世界当中是不存在的,是一个模板,是一个概念。是人类思考抽象后的产物。
-
-类代表了一类事物
-
-在现实世界当中,对象A和对象B之间具有共同特征,进行抽象总结出一个模板,这个模板称为类。
*什么是对象?
-对象是实际存在的个体,现实世界中存在。*描述整个软件开发的过程:
-程序员先观察现实世界,从现实世界中寻找对象。
-寻找了多个对象之后,发现所有的对象都有共同特征
-程序员在大脑中形成了一个模板【类】
-Java程序员通过Java代码表述一个类
-Java程序中有了类的定义
-通过类创建对象
-有了对象之后,让对象直接协作形成一个系统*类是对象的抽象,对象是类的实例
*类{ 属性;//描述对象的状态信息 方法;//描述对象的动作信息 }
*类的定义
**语法结构:
[修饰符列表]class 类名{
属性;
方法;
}