面向对象的基本特性

抽象:从一个具体的对象中提取一组数据,去除非本质和特性的属性,保留本质的,共性的。

比如学生,有很多的属性(学号,姓名,性别,身高,体重,血型,专业,班级,成绩),如果我们要做的是一个学生成绩管理系统,我们应该关注的,除了学生的基本信息(姓名,性别),还要关注和学习相关的属性(学号,专业,班级,成绩),不用关注小学生的血型,体重,身高,而如果是一个学生健康管理系统,那么除了基本属性,身高,血型,体重,就是学生的本质属性。

封装:给对象一个边界,内部的信息尽量的隐蔽,只留对外的操作接口。比如:显示器,有一个外壳,内部的元器件是看不到,更是不允许直接拨弄的,而是留下电源、信号接口一级调节亮度的按钮。封装使得对象更加安全,容易。

继承:继承是允许后代直接使用前辈已经拥有的。比如:谁长的像谁的父母,那就是继承了部分父母的基因。如果自然界中没有,世界依然是混沌的状态,所有的生物的出现都是从初始状态开始,也就没有了金华。继承是一种代码重用的机制,使得代码更省略、更可靠、更高效。

比如:一个拥有卡车事迹和制造能力的企业,要设计和制造消防车,显然比没有经验的企业更加搞笑和可靠,以为它继承了之前的设计和制造能力,只要在这个基础上稍加改造即可。

多态:同一条消息发送给不同的对象,他们做出的响应可能不同,比如:排不运动员和游泳运动员,都有“出发”的这个方法,当收到裁判员传来的消息时,都开始执行“出发”,但是所做的动作是完全不相同的。

面向对象程序设计方法实际上是我们习惯的人的思维方式去思考和设计,其实是返璞归真,并没有什么难的。

猜你喜欢

转载自blog.csdn.net/qq_41554789/article/details/81109628
今日推荐