今天看啥
热点:

www.Bkjia.Comjava就是面向对象编程

+1 www.bkjia.com

www.Bkjia.Com是的吧

+1 www.bkjia.com

不,他不是。 C++/C#等都不是, SmallTalk才是被认为纯粹的面向对象。在SmallTalk,所有的东西都是对象,包括int,甚至加号。Java比C++更接近SmallTalk,但仍然不是纯粹的面向对象语言。为什么讨论这些呢?语言你干活的工具,得选一样更适合你的。如果是急需速度的话,你可以选择FORTRAN,c或汇编,把程序直接写到硬件中也是一个好主意,当然,得看有没有这个必要。而在一些项目中,面向对象是很重要的。SmatlTalk一直不能成为主流语言,就是因为他太慢了。 说详细点吧: Alan Kay总结了Smalltalk的五大基本特征。这是第一种成功的面向对象程序设计语言,也是Java的基础语言。通过这些特征,我们可理解“纯粹”的面向对象程序设计方法是什么样的: (1) 所有东西都是对象。可将对象想象成一种新型变量;它保存着数据,但可要求它对自身进行操作。理论上讲,可从要解决的问题身上提出所有概念性的组件,然后在程序中将其表达为一个对象。 (2) 程序是一大堆对象的组合;通过消息传递,各对象知道自己该做些什么。为了向对象发出请求,需向那个对象“发送一条消息”。更具体地讲,可将消息想象为一个调用请求,它调用的是从属于目标对象的一个子例程或函数。 (3) 每个对象都有自己的存储空间,可容纳其他对象。或者说,通过封装现有对象,可制作出新型对象。所以,尽管对象的概念非常简单,但在程序中却可达到任意高的复杂程度。 (4) 每个对象都有一种类型。根据语法,每个对象都是某个“类”的一个“实例”。其中,“类”(Class)是“类型”(Type)的同义词。一个类最重要的特征就是“能将什么消息发给它?”。 (5) 同一类所有对Www.BKJIA.com象都能接收相同的消息。这实际是别有含义的一种说法,大家不久便能理解。由于类型为“圆”(Circle)的一个对象也属于类型为“形状”(Shape)的一个对象,所以一个圆完全能接收形状消息。这意味着可让程序代码统一指挥“形状”,令其自动控制所有符合“形状”描述的对象,其中自然包括“圆”。这一特性称为对象的“可替换性”,是OOP最重要的概念之一。 一些语言设计者认为面向对象的程序设计本身并不足以方便解决所有形式的程序问题,提倡将不同的方法组合成“多形程序设计语言”。参考资料:Thing in Java中文版

+www.Bkjia.com1

英文的www.Bkjia.com可以

+1 www.Bkjia.Com

相关推荐

www.bkjia.comtruehttp://www.bkjia.com/doc/297328655.htmlTechArticlewww.Bkjia.Comjava就是面向对象编程 +1www.bkjia.com www.Bkjia.Com是的吧 +1www.bkjia.com 不,他不是。 C++/C#等都不是, SmallTalk才是被认为纯粹的面向对象...

相关文章

相关频道:

帮客评论

视觉看点