面向对象:
面向对象是一种思想。上帝赋予人类说话的能力,而说话又创造了人类对宇宙的量度--思想!
编程,将业务逻辑在计算机的世界中映射出来!使业务中需求的解决!面向对象编程,首先我们将业务逻辑中的类抽象出来,这些类具有自己的属性和方法,类与类之间具有关联、继承、聚集、组合、实现等多种关系。关联一般体现为一个类的方法中具有另一个类的形参。继承关系,汽车是机动车。聚集,球队有队长和队员。组合人有胳膊、臂膀、腿、手等。实现一个类具有很多方法,但是具体的实现交给实现这些方法的类。之所以这样去做是因为这更符合自然语义,我们描述一个业务逻辑,抽象出类,可以更形象的去描述它,而描述之后,这个业务逻辑也就被实现了。通过用例图,我们便抽象出了类;通过用例图我们确定了类及其属性和方法;通过时序图,我们形象了业务逻辑,我们也就完成了编程。这样的好处,最大之处就是很自然、形象!当然,更多的好处在等着我们。面向对象将属性和方法封装成为类,可以更方便方法的重用。也正是面向对象的特性:继承、封装、多态!造就了面向对象的诸多优点!
这个我会逐渐使其丰满的,也希望看到的朋友都多提几句,千万别弄死板的教科书来说。先谢过!希望最后能总结出一个大家都认同的好文章!期待!
继承:可重用性的体现,可以减少代码冗余;
多态:
1、静态多态:代码健壮性的体现;
2、动态多态:代码可扩展性的体现;
封装:安全性与可以实现松耦合性的体现
类的封装性即不能让外面的类随意修改一个类的成员变量;
在定义一个类的成员(包括变量和方法),使用private关键字说明这个成员的访问权限,只能被这个类的其他成员方法调用,而不能被其他的类中的方法所调用;
为实现封装性,常将类的成员变量声明为private,再通过public的方法来对这个变量进行访问。对一个变量的操作,一般都有 读取和赋值操作,我们一般定义两个方法来实现这两种操作,即:getXxx()与setXxx();
一个类就是一个模块,我们应该让模块仅仅公开必须要让外界知道的内容,而隐藏其他的一切内容。再进行程序设计时,应尽量避免一个模块直接修改或操作另一个模块的数据,模块设计追求强内聚(许多功能尽量在类的内部独立完成,不让外面干预),弱耦合(提供给外部尽量少的方法调用)。