聊一聊面向对象

来源:互联网 发布:如何下载喀秋莎软件 编辑:程序博客网 时间:2024/06/15 04:44
面向对象方法就世界看做一个一个相互独立的对象,相互之间并不因果关系,他们平时“鸡犬之声相闻,老死不相往来”。只有在某个外部力量的驱动下,对象之间才会依据某种规律相互传递信息。这些交互构成了这个世界的一个过程,在没有外力的情况下,对象则保持静止的状态。
从微观角度来说,这些对象有奇妙的特性。对象内部就是一个黑盒子,什么也看不见,这就是封装。对象可以结合在一起形成新的对象,结合后的对象具有前两者特性之和,这就是聚合。对象可以繁育,产生的孩子具有父辈全部的本领,这就是继承。对象都是多面派,他会根据不同的要求展现其中的一面,这就是接口。多个对象可能长者相同的脸,这张脸背后却有这不同的行为,这就是多态。

从宏观的角度来讲,对象是“短视”的,他不知道他身处的整个世界是怎么回事,也不知道他的行为是如何贡献给这个世界的。他只知道与他有着联系的身边的一群小伙伴(这称为依赖),并与小伙伴保持信息交流(这称为耦合)。同事,对象也是“自私”的,即使在伙伴之间,每个对象也会顽固的保护自己的领地,只允许其他人通过他打开的小小窗口(这叫做方法)来交流,从来都不会和对方敞开心扉。