Java.next:第一部份——共同点[Java编程]
本文“Java.next:第一部份——共同点[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
本文是Java.next系列的第一部份.在这一部份,我将探究作为Java.next的语言所具有的共同特点.
我挑选了四种语言作为“Java.next”的代表:Clojure,Groovy,JRuby,以及Scala.乍看起来,这几种语言有着 很大的差别.Clojure是Lisp方言;Groovy是作为“类Java”的挑选;JRuby即具有Ruby语言的文雅,同时也有着Rails所带来 的上风;与其他都不一样的是Scala,它有着静态语言所具有的特点.
正如你所猜想的一样,有很多关于这些语言中谁才是最好的辩说.之所以有着这么多的辩说,很大程度上是因为这些语言有着很多共同点.它们有着一个共同的演变后台:Java语言.Java语言所具有的长处以及缺陷影响着这些语言的计划方向.
在这篇文章中,我侧重从下面两个方面来阐述这些语言的共同点:
☆ 过去的10年中,我们在基于虚拟机、面向对象的语言编程中得到了很多关于若何开辟易读的、可保护的利用.Java.next汲取了这些成果,使得这些语言更注重于问题的本质而不是情势.
☆ “本质 VS 情势”的计划理念使得编程方法发生了很大的改变,这种见解的改变比从前从C/C++到Java的改变更大.
我将Java.next所具有的共同长处概括为以下八点:
● 一切皆对象
● 简便的属性定义方法
● 易用的调集类
● 函数式编程
● 运算符重载
● 可保护的非常处理
● 给已有类增添新办法
● 成立新的语言构造
一切皆对象
在Java中,我们不时刻刻都要面对对象范例与基本范例的差别之处.这种差别招致三个实际问题:
1.API必须写两份:一个针对对象范例;一个针对基本范例.更糟糕的情形是需求重写多份:一个针对对象范例,然后对每一个基本范例各写一份.
2.默许的数值范例有着范围限制,一旦越界,程序会以诡异的情势中止.
3.关于那些高精度范例(译者注:指BigInteger等范例),你不能利用直观的数学操作符(+,-,etc.)来操作它们.
在Java.next中,一切皆是对象.你可以在全部的范例上利用相同的语法调用办法.
; clojure
(. 1 floatValue)
1.0
// groovy
1.floatValue()
===> 1.0
# ruby
1.to_f
=> 1.0
// scala
1.floatValue
res1: Float = 1.0
以上是“Java.next:第一部份——共同点[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |