面向对象是如何工作的

  面向对象是推进软件开发的综合技术,不仅包括编码的设计实现,也在上流工程

的业务分析、需求定义中用到。

    

  面向对象的软件开发技术与现实世界是似是而非的,首先软件只能一定的程度上涵盖

现实世界的工作,并不能完全模拟现实世界的运行,计算机只是擅长做存储和固定指令的

工作;

  类,多态,继承是面向对象的三大要素。类用于将变量和子程序汇总在一起,创建独

立性高的构建;多态和继承用于消除重复代码,创建通用性强的构件。

  类的功能是汇总,隐藏和创建实例(不限数量)

  • 汇总子程序和变量
  • 隐藏,子程序和变量只在类的内部使用
  • 从一个类可以创建多个实例

  实例变量是存在期间长的局部变量或者限定访问范围的全局变量,这种变量结构在面向

过程变程中是不存在的。

  多态是创建公用主程序的结构,公用子程序将被调用端的逻辑汇总为一个逻辑,而多态

则相反,他统一了调用端的逻辑,不管被调用端如何变化,也无须修改调用端。多态是统一

调用子程序端的逻辑结构,即创建公用主程序的结构。

  继承是将类定义的公共部分汇总到另外一个类中,并去除重复代码的结构。

  指定类型的原因有两个:告诉编译器变量内存区域的大小;防止程序发生错误,在不同

类型变量进行运算时,能在编译或者运行程序时发生显示的错误。

  在面向对象编程中,类也可以作为类型使用,从而将类型检查作为一种程序规则强制要求。

      程序的运行方式分为编译器方式和解释器方式。编译器方式的运行效率高,编译器是将程

序转换成计算机能够理解机器语言之后再运行的方式;而解释器方式是将程序命令边解释边执

行的方式,并不需要编译器,这种方式可以使同一个程序在不同的环境中运行。而面向对象的

代表Java则采用中间码的方式,中和了编译型和解释型语言的优点。既可以使同一个程序在不

同的环境中运行,同时又兼顾运行效率。

  静态区:在应用程序开始时分配,一般用于保存全局变量和运行的嗲吗,为整个应用程序

分配一个。

  堆区:在程序运行开始时分配一定的区域,之后根据需要再为应用程序分配,存储的信息

取决于应用程序,为一个系统或者应用程序分配一个。

  栈区:保存调用子程序的参数,局部变量和返回值,为每个线程分配一个。

  面向对象的类一般存储在静态区,实例存储在堆区,方法执行时的参数,局部变量和返回值

存储在栈区。

  提高构件独立性的诀窍:单一职责(明确表示功能的名称),信息隐藏,创建得小一点。

  敏捷开发宣言:个体和互动高于流程和工具;工作的软件高于详尽的文档;客户合作高于合

同谈判;响应变化高于遵循变化。敏捷开发实践:测试驱动开发,重构和持续集成。

  

原文地址:https://www.cnblogs.com/wust-hy/p/13514296.html