该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
也可以说是行为。
举个例子:我家里的水管坏了,马桶坏了,不巧风扇也坏了。该怎么办呢?
一、面向过程的思想:
1.我先学会了修水管
(void 修水管(){...如何修水管......})
2.再学会修马桶
(void 修马桶(){......如何修马桶......})
3.再学会修风扇
{void 修风扇(){......如何修风扇......}}
main(){
然后开始修了,就在主函数中,调用了 修水管()函数 ; 修马桶()函数;修风扇()函数;
return 0;
}
OK都修好了。
但是有人说这也太麻烦了吧,我不巧水管马桶风扇一起又坏了。我不想太麻烦又是怎么办的呢?
二、面向对象的思想:
我知道有这么一类人,他会修水管,会修马桶,会修风扇。
class 一类人{
void 修水管(){.....如何修水管....}
void 修马桶(){......如何修马桶...}
void 修风扇(){......如何修风扇....}
//这些void都是方法或者说都是函数,属于这么一类人所会的行为。这里没写属性,你也可以加上,比如int eye = 2; int arm = 2; 等等。不过无关紧要,我们今天只说行为。
}
我知道了这么有一类人,那么我该去找一个这样的真实的人出来了。找来找去,找到了张三。唉,张三正好完全符合这一类人的各种属性和行为。于是真实的对象就出来了,他就是张三,我按照上面这么“一类人”这个类型找出来的真实的对象“张三”。
一类人 张三 = new 一类人(); //注意:“一类人”是类型名,张三是取的一个对象的引用。
找到了张三后,他很听话,我就对他下了命令,我说你去修水管,去修马桶,去修风扇。
于是,就有了这种写法:
张三.修水管();
张三.修马桶();
张三.修风扇();
这里其实就是调用了对象里的三个行为,也或者就像你说的三个服务。
我不知道这么说你能不能理解面向过程和面向对象的区别了