“哈哈,这里最热闹。面向过程和面向对象都很不错。自从有编程这个职业以来,人们就在追求指令的简单化和抽象化。一条指令包括:动作、动作的执行者、动作的承受者。比如在汇编语言里,
人们这样写:move eax, 1
在C,Pascal里,人们就可以写 func();来调用函式,这是对指令的很好的抽象。后来就有了C++,Java,Delphi,C#,指令可以达到更高层次的抽象,同时动作和动作的执行者(或者动作的承受者)联系的更加紧密。不信?我们不喜欢空谈,我们让例子说话,请看:
// 过程式语言 ,比如我们在训练三个儿童如何上厕所
int main()
{
上男厕所(克林顿);
上男厕所(布什);
上女厕所(劳拉);
}
要是用面向对象来写,就是
int main()
{
克林顿.上男厕所();
布什.上男厕所();
劳拉.上女厕所();
}
通过使用多态,我们可以进一步简化指令:
class Human{ public : 上厕所();};
class Man:public Human{上男厕所();};
class Woman:public Human{上女厕所();};
int main()
{
p克林顿->上厕所(); //看,指令简化啦,从“上男厕所”变成了“上厕所”。
p布什->上厕所();
p劳拉->上厕所();
人们这样写:move eax, 1
在C,Pascal里,人们就可以写 func();来调用函式,这是对指令的很好的抽象。后来就有了C++,Java,Delphi,C#,指令可以达到更高层次的抽象,同时动作和动作的执行者(或者动作的承受者)联系的更加紧密。不信?我们不喜欢空谈,我们让例子说话,请看:
// 过程式语言 ,比如我们在训练三个儿童如何上厕所
int main()
{
上男厕所(克林顿);
上男厕所(布什);
上女厕所(劳拉);
}
要是用面向对象来写,就是
int main()
{
克林顿.上男厕所();
布什.上男厕所();
劳拉.上女厕所();
}
通过使用多态,我们可以进一步简化指令:
class Human{ public : 上厕所();};
class Man:public Human{上男厕所();};
class Woman:public Human{上女厕所();};
int main()
{
p克林顿->上厕所(); //看,指令简化啦,从“上男厕所”变成了“上厕所”。
p布什->上厕所();
p劳拉->上厕所();
}
”