我现在是java专业人士,我喜欢去ruby。这两种语言都有相似之处吗?有什么主要区别?因为两者都是面向对象的。
答案 0 :(得分:15)
这些怎么样:
<强>相似性强>
与Java一样,在Ruby中......
<强>差异强>
与Java不同,在Ruby中......
答案 1 :(得分:6)
除了面向对象之外,两种语言之间的相似性很少。 Java是一种静态类型的编译语言,而ruby是一种动态类型的解释语言。语法也非常不同。 Java使用c使用分号终止行的约定,而ruby使用返回字符。
虽然Java确实有一些内置的迭代器支持,但ruby对迭代器的使用在整个语言中都很普遍。
这显然只涉及两者的比较。 This is a decent write-up on the comparisons
答案 2 :(得分:4)
你问的是一个非常广泛的问题。我喜欢将脚本语言与我比较口语的方式进行比较,所以在这种情况下;西班牙语和意大利语有哪些主要的区别和相似之处?
如果你提出这个问题,那么你要么得到非常多或很长的答案。解释语言之间的差异充其量是困难的,因为很难确定关键因素。
到目前为止,此处的回复以及其他人与之相关的链接证明了这一点。它们要么变化要么很长。
回到西班牙语与意大利语的比喻,我可以说语言相似但仍然非常不同。如果您(仅)知道其中一个,您可能能够理解另一个中发生了什么,尽管您可能无法很好地使用它。知道一个肯定会让你更容易学习另一个。一个人被更多的人使用,所以你可以从学习中受益更多。
前面的所有段落也可以应用于Java与Ruby。说两者都是面向对象的,就像说西班牙语和意大利语都是罗马语系的成员。
当然,所有这一切都无关紧要。最有可能的是,你的基本问题是它是否“值得”学习Ruby而不是Java或者除了Java之外。不幸的是,这也没有简单的答案。您必须权衡每种语言的优缺点,例如受欢迎程度,需求和职业机会。然后自然会出现你喜欢哪种语言的问题。您可能比其他语言更喜欢一种语言,因为它具有更好的语法。 (同样地,你可能更喜欢意大利语,因为你认为它比西班牙语更“美丽”,尽管后者更广泛并且你有更多“使用”它。)
就个人而言,我更喜欢Ruby。出于许多不同的原因。就像我更喜欢意大利语。
答案 3 :(得分:1)
在Ruby中,new就像属性而不是关键字。因此,要实例化一个对象,您可以在Ruby中执行此操作:
animal = Animal.new
Ruby是强类型,但也是动态的。由于它的动态性,Ruby可以让你做鸭子打字。
所以我可以说Java和Ruby没有太多的相似之处。直到今天,我发现两者之间没有任何相似之处,因为Ruby已经走了它自己的路径,而不像许多其他源自C语言的语言。