对象就像是我们生活中的每个实体(如人、钢笔等等) 对象的抽象叫做类,打个比方说,人是一个类,你我是这个类的实体对象。 对象有数据,就像我们的身高、体重,就是类里的各种变量。 对象有动作,比如我们可以吃饭、行走,就是类里的成员函数。 对象的数据多是private(私有)的,通过成员函数(多为public)来访问他。 这就是类对数据的封装性。 人还分为男人和女人,然后再根据年龄分为老人、小孩等。但他们都具有“人”的特性、这就叫做继承。 对同一件事情,不同的人有不同的反映,这就叫做多态。 比如一个学校要开学了,不同的部门会做不同的事。 多态还体现在重用性上,比如函数、运算符的重载,实现“一物多用”。 面向对象的作用很大,在以后的实践中会慢慢感受到。因为他来自我们的现实生活中,所以比较自然、顺手。 像C语言如果用来开发大型软件的话就会很手足无措,因为各种函数能够把你烦死。 ---------------------------------------------------------- 面向对象的好处 使用面向对象思想进行开发有以下优点: 1、易维护 采用面向对象思想设计的结构,可读性高,由于继承的存在,即使改变需求,那么维护也只是在局部模块,所以维护起来是非常方便和较低成本的。 2、质量高 在设计时,可重用现有的,在以前的项目的领域中已被测试过的类使系统满足业务需求并具有较高的质量。 3、效率高 在软件开发时,根据设计的需要对现实世界的事物进行抽象,产生类。使用这样的方法解决问题,接近于日常生活和自然的思考方式,势必提高软件开发的效率和质量。 4、易扩展 由于继承、封装、多态的特性,自然设计出高内聚、低耦合的系统结构,使得系统更灵活、更容易扩展,而且成本较低。 面向对象设计的原则 SRP 单一职责原则 就一个类而言,应该仅有一个引起它变化的原因。 OCP 开放————封闭原则 软件实体(类、模块、函数等)应该是可以开展的,但是不可修改。 LSP Liskov 替换原则