Day05_17_面向对象编程
Java面向对象
-
面向对象编程 和 面向过程编程
-
举个例子: 用面向过程的方法写出来的程序是一份蛋炒饭,而用面向对象写出来的程序是一份盖浇饭。
-
面向过程编程: 主要关注事物因果关系的实现,面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了.
-
面向对象编程: 将现实世界中的事物分割成不同的单元,各单元之间独立协作.把构成问题的事物分解成一个个对象,建立对象的目的不是为了完成某一个步骤,而是为了描叙某个事物的属性、动
作、行为等。 -
面向对象编程的本质: 以类的方式组织代码,以对象的方式封装数据。
-
-
面向对象 和 面向过程的优缺点?
-
面向过程:
优点: 性能比面向对象高,但因为类在调用时需要实例化,开销比较大,比较消耗资源, 比如单片机、嵌入式开发、 Linux/Unix等一般采用面向过程开发,性能是最重要的因素。 缺点: 没有面向对象易维护、易复用、易扩展。
-
面向对象:
-
优点:耦合度低、易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统 更加灵活、更加易于维护。
缺点:前期投入较高,需要进行独立体抽取,大量的系统分析与设计 ,性能比面向过程低。
-
抽象的概念?
- 举个例子: 比如想买一件衣服,但是目前只是想买衣服而已,还没确定是买白色的衣服还是蓝色的衣服,也还没确定是要买短袖还是长袖的衣服。 - Java语言中,用abstract 关键字来修饰一个类时,这个类叫作抽象类,抽象类是它所包含的所有子类的公共属性的集合。
-
面向对象的三大特征?
- 封装: 封装可以被认为是一种保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。要访问该类的代码和数据,必须通过严格的接口控制。封装最主要的功能在于我们能修改自己的实 现代码,而不用修改那些调用我们代码的程序片段。 - 继承:继承的基本作用是 代码复用,但是继承最主要的作用是:有了继承才有了以后 方法的覆盖 和 多态 机制。子类继承父类,因继承而得到的类称为子类,被继承的类叫做父类。 - 多态:它是指在父类中定义的属性和方法被子类继承之后,可以具有不同的数据类型或表现出不同的行为,这使得同一个属性或方法在父类及其各个子类中具有不同的含义。不同的对象调用相同 的方法,会有不同的结果。
-
-面向对象的开发过程?
-
使用面向对象方式开发一个软件,这个软件的整个生命周期当中贯穿使用 OO 面向对象方式。
面向对象的分析 OOA 面向对象的设计 OOD 面向对象的编程 OOP
-
-
为什么面向对象会成为主流技术?
- 因为面向对象更符合人的思维方式,更加直观,更容易分析和现实现实中的事物。