通过 买电脑(组装机) 来理解面向过程和面向对象。
面向过程:
自己做这些事。按照步骤,通过这些过程完成。
1,查信息(了解硬件行情)。
2,查报价(电脑城询价)
3,组装监督。
4,扛回家。
面向对象:
以后买电脑:
因为这些过程我都不了解。
找一个懂行的人。
这个人具备你所需要的功能。
毕老师…(对象)
{
1,查信息(了解硬件行情)。
2,查报价(电脑城询价)
3,组装监督。
4,扛回家。
}
毕老师.查信息。
毕老师.查报价。
毕老师.组装监督。
差异(面向对象的好处:)★★★★★
1,面向对象是一种更符合人们思考习惯的思想。
2,面向过程中更多的体现的是执行者,面向对象中更多的体现是指挥者。
指挥对象做事情。
3,面向对象将复杂的问题简单化了。
在面向对象的世界中:万物皆对象。
面试的时候:
阐述三个好处。
具体化。举例:其实面试官您就是按照面向对象的思想在思考问题。
面试官您本身就可以开发项目,但是项目有可能比较大,一个人开发周期长。
为了提高效率,需要有更多的具备者专业开发能力的人来帮助您做事情。
这个人就是您所需的对象,只要调用这些对象的开发功能就可以完成项目。
只要指挥他们做事情就可以了。
面向对象如何应用到需求中。★★★★★
在需求中尽量的去寻找对象。(从问题领域中抽取对象)
最简单的思考访问:一般情况,名词表示的大多是对象。
需求:将大象装进冰箱里。
对象:大象,冰箱。
分三步:
1,打开冰箱门。
2,将大象装进去。
3,关上冰箱门。
冰箱对象中:
打开功能。
关闭功能。
存储功能。
大象
{
}
冰箱//对冰箱事物的描述(说明)。
{
打开(){}
关闭(){}
存储(大象){}
}
使用冰箱中的功能。
1,创建冰箱的对象。
冰箱 bingXiang = new 冰箱();//给对象起名字。
2,调用冰箱的功能。
对象.功能();
bingXiang.打开();
bingXiang.存储(new 大象());
bingXiang.关闭();
总结:
1,先按照名词提取问题领域中的对象。
2,对对象进行描述,其实就是在明确对象中应该具备的属性和功能。
3,通过new的方法就可以创建该事物的具体对象。
4,通过该对象调用它以后的功能。
################################
#自己动手举出两个面向对象的例子#
################################
练习:
人开门。
人
{
开门(门)
{
门.开();
}
}
门
{
门轴;
弹簧;
开()
{
用到门轴;弹簧;
}
}
人刹车。
毕老师用电脑上课。
描述对象:
老师
{
姓名;
使用电脑(电脑)
{
电脑.开();
电脑.运行();
}
讲课()
{
}
}
电脑
{
开(){}
运行(){}
}
老师 毕老师 = new 老师();
毕老师.使用电脑(new 电脑());
毕老师.讲课();
-------------------------------------------源自黑马Java(毕向东老师)