商务网站开发开题报告,最好看的2018中文在线观看,淘宝网站怎么做的,北京三原色ps网站摘自《UMLOOPC嵌入式C语言开发精讲》 11.3 对象与函数11.3.1 函数的角色经济诺贝尔奖得主H.A.Simon#xff08;H.A.Simon#xff0c;计算机人工智能之父#xff09;在其1962年的文章《The Architecture of Complexity》中说道#xff1a;“从小系统建造成庞大系统时…摘自《UMLOOPC嵌入式C语言开发精讲》 11.3 对象与函数 11.3.1 函数的角色 经济诺贝尔奖得主H.A.SimonH.A.Simon计算机人工智能之父在其1962年的文章《The Architecture of Complexity》中说道“从小系统建造成庞大系统时若有稳定的中间模块Intermediate Module则庞大的系统稳定且发展快速。”在日常生活中高楼大厦之所以能够迅速建造起来是因为使用了大量预制的中层模块如帷窗等。这些中层模块较平房常用的砖块大一些。 在计算机软件上也适用同样的观念。程序的最小模块是一个指令如果一个程序含有10 000行指令但未加分组或分类这样的程序将很复杂难以驾驭。基于Simon的观念人们将程序分而治之Devide and Conque分为几个中间模块Module就是通称的函数Function、程序Procedure、子程序Subroutine或段Paragraph。如图11-2所示。 此时软件中的函数或子程序扮演着模块的角色使得人们能快速建造出庞大的软件系统。函数如同砖块是建造一般房子的中层模块。至于建造高楼大厦则适宜采用更大的中层模块。因此计算机软件人员必须将函数分门别类并组成中上层的模块——对象Object。 图11-2 传统程序直接由函数或子程序所组成OOP软件则将函数纳入对象中再由对象组成庞大程序。函数隶属于对象与对象中的数据密切联系在一起。软件的建造理念和高楼大厦的建造观念是一致的。函数的角色为 l 从对象本身观之函数表达了对象的动态行为。 l 从整个系统观之函数是支持中层模块即对象的支架。 在“泪眼问花花不语乱红飞过秋千去”的例子中女主角的行为有“流泪”Cry及“问”Ask花的行为有“语”Say和“飞”Fly秋千的行为有“摆荡”Swing。以对象来组织这些函数如图11-3所示。 图11-3 Cry() 和Ask() 是“女主角”对象内的函数Say() 和Fly() 是“花”对象内的函数而Swing() 为“秋千”对象内的函数。 11.3.2 对象与类 类是群体或集合而对象是类中的一份子。人们常用“是一个”is a来表达对象与类之间的关系。例如 l 月亮是一个星球。 l 嫦娥是一位个美丽的神仙。 l 毕加索是一个艺术家。 l 毕加索是一个画家。 l 张大千是一个画家。 l 贝多芬是一个音乐家。 ..... 所以“月球”是对象属于“星球”类的一份子。毕加索是对象艺术家是类同样地画家也是类其中画家是艺术家群体中的小群体部分集合。毕加索和张大千同属于“画家”类所以具有共同特点——精于美术绘画。 11.3.3 类的用途描述对象的共同特点 软件中的对象为自然界对象的抽象表示只表达了其重要特征与行为而忽略了细节部分。至于哪些是重要特征和行为呢程序中必须加以说明。同类的对象具有共同的重要特征与行为因此可由类统一说明对象应表达的那些特征和行为。也就是说类统一说明了对象应含哪些“数据”Data和哪些“函数”Function。例如 double a 3.5 5; printf(a); C语言已定义的double、int等数据类型其变量含有、-、*、/等基本运算行为凡double的变量皆能做这些运算。同理如果我们创造了新的数据类型即类——花且定义如下 CLASS(花) { char name[10]; int color; void fly(); void say(); }; 这就是花类的定义它说明了 花类内的对象即“花”数据类型的变量皆具两项共同特征name和color。 l 花类的对象皆具两项共同行为fly()和say()。 同类的对象特征和行为是一致的所以只须在类定义中统一说明不必对对象逐一说明。定义好以后就能借花类来声明对象了此时也可以将类视为数据类型则花类的对象就是花数据类型的变量了。花类如图11-4所示。 图11-4 更多样章试读请访问http://www.china-pub.com/209254 转载于:https://www.cnblogs.com/bvbook/archive/2008/12/08/1350577.html