很多人想学习Java编程,但是不知道如何跨出第一步。在这个Java咖啡馆中,让我们手把手,从零学起。
序言
2004年4月2日,微软和Sun公司突然宣布,微软以19.5亿美元的代价与Sun化干戈为玉帛,以平息Sun公司针对微软的反托拉斯诉讼和专利诉求。同时,还与Sun公司达成一项期限长达10年的协议,相互分享专利技术,并且彼此承诺十年不与对方互讼。
新闻发布会上,Sun CEO斯科特·麦克尼利(Scott McNealy)还赠给微软CEO斯蒂夫·鲍尔默(Steve Ballmer)一件底特律红翼队的运动衣,一个和平的标志。尽管他们摆出优雅的姿势照相,似乎仍然抑制不住复杂的心情。两个积怨已深的对手能够坐下来友好谈话,原因很简单:地平线上出现了更危险的共同威胁——Linux和IBM。
Sun公司是Java的发明人,但IBM却是Java最大的受益者。是IBM抢占了利润丰厚的应用服务器市场的头把交椅;是IBM的WebSphere开发工具最受Java开发者青睐;是IBM把自己的开发工具叫做Eclipse(Eclipse的中文意思是日蚀,Sun不怒才怪);是IBM在Java技术上投入最多的金钱,拥有最大的影响力和最好的开发者社区。Sun早已坐不稳老大的位子了。此外,随着与SCO之间的出色诉讼,IBM重新登上开放源代码运动的领军宝座。而开放源代码的Linux逐步走强,又使得Sun无法阻止用户从Solaris这样有版权的Unix操作系统转向开放源代码的Linux操作系统。微软也一样被IBM和Linux郁闷着。敌人的敌人就是我的朋友,简单的逻辑促使了这两个惯于互相掐架的公司结成联盟。
虽然天下三分群雄割据,对于Java技术,不啻是个契机。按照合约,Sun已经同意延长微软Java虚拟机的授权,最终期限将延迟到2007年12月31日。目前,最终用户的Java虚拟机的安装率是70%~80%,远比Macromedia公司Flash技术98%的安装率低得多,这和微软原先在Java虚拟机的问题上反反复复蹂躏政策不无关系。而这次合作,终于让用户及Java开发者吃了一颗定心丸(笔者个人认为,只要Java还有一口气尚存,Flash想成为丰富客户端技术的标准就决不可能)。其次,微软的.net技术和Java技术之间的对抗变得友好起来,更好的交互性,使得双方都可以从这个联盟中受益。最后,Sun和IBM都是Java技术的强势拥护者,跟着蓝色巨人,没错的。
这出西洋“三国演义”会怎么唱呢?让我们拭目以待。
搭建Java开发环境
为了品尝第一杯Java咖啡,仅仅需要:
J2SE SDK,即Java 2平台标准版软件开发包(Java 2 Platform Standard Edition SDK)。
一个文本编辑器,比如Windows“附件”里面的“记事本”即可。
1.J2SE 1.4 SDK
J2SE是Java技术的基石,就像用电脑需要有电才行。撰写Java程序,需要J2SE的SDK。SDK是Software Development Kit的缩写,即软件开发包。你可以从http://java.sun.com/j2se/1.4.2/download.html下载J2SE 1.4.2 SDK。注意,应该下载“J2SE v 1.4.2_04 SDK”(其中“1.4.2_04”是版本号,可能由于时间的变化而改变),而不是“J2SE v 1.4.2_04 JRE ”或其他。JRE是Java Runtime Environment的缩写,即运行时环境,安装JRE才能在Windows、 Linux以及Solaris系统上面运行Java程序,但JRE无法进行Java开发。实际上,SDK包含了JRE,所以只要下载SDK即可。在Java咖啡馆中我们将在Windows上讲述Java的开发技术,所以在接受协议后,下载约49.36MB的“Windows Offline Installation, Multi-language”即可。
下载完毕后双击安装程序,过程与安装普通应用程序没有区别。
黄糖故事
J2SE SDK的由来
在安装时,我们可以看到,J2SE安装程序中标志着“1.4.2”的版本字样,明明是Java 1,为什么要叫做Java 2呢?Sun早在1995年便推出了Java技术。最早的开发包叫做JDK,1996年发布了JDK 1.0,1997年发布了JDK 1.1,1998年又发布了JDK 1.2。考虑到市场营销以及对自己技术的自信,Sun在JDK 1.2发布以后便把Java改名为Java 2,JDK改名为Java 2 SDK,版本号是用来标识Java 2技术的,而不是SDK的版本。我们这里使用的是成熟的J2SE 1.4技术,所以使用J2SE 1.4 SDK。其他还有J2EE SDK和J2ME SDK等等,分别针对企业应用和嵌入式系统,它们都以J2SE SDK为基础。今年夏天,Sun还将推出代号为“Tiger”的J2SE 1.5 SDK,增加了许多关键的特性,备受瞩目与期待。