Java的产生与历史

今天谈谈Java的发展吧,标题是Java的历史好像有点不合适,印象中历史这个词一般是用于很长的时间概念吧,Java从1995诞生至今,只有10年左右了,和C,C++这些老大哥比起来年轻了很多,哲学上说任何事物的产生都是必然的,Java也不例外了,Internet的迅猛发展导致了Java的迅猛发展,那句成语是怎么说来着,水涨船高,Java自然成为网络世界最受欢迎的语言了,当然Java的发展另一方面也是长期在微软压迫下的软件世界的反抗了,McNealy,Sun的CEO、总裁兼董事长。他曾经狂傲的说:“摧毁微软是我们每个人的任务。”这位英勇的硅谷英雄,似乎带头起义,试图组织一个反微软阵线联盟,以对抗微软这股庞大的托拉斯恶势力。他时常口出惊人之语,在公开场合大肆的批评微软,并曾经说微软的.NET是.NOT;
1.Java的产生
Java来自于Sun公司的一个叫Green的项目, 其原先的目的是为家用消费电 子产品开发一个分布式代码系统, 这样我们可以把E-mail发给电冰箱、 电视机等家用电器, 对它们进行控制, 和它们进行信息交流。开始, 准备采用C++,但C++太 复杂, 安全性差, 最后基于C++开发一种新的语言Oak(Java的前身), Oak是一种用于网络的 精巧而安全的语言, Sun公司曾依此投标一个交互式电视项目, 但结果是被SGI打败。 可怜的Oak几乎无家可归, 恰巧这时Mark Ardreesen开发的Mosaic和Netscape启发了Oak项 目组成员, 他们用Java编制了HotJava浏览器, 得到了Sun公司首席执行官Scott McNealy的 支持, 触发了Java进军Internet。 Java的取名也有一些趣闻, 有一天, 几位Java成员组的 会员正在讨论给这个新的语言取什么名字, 当时他们正在咖啡馆喝着Java(爪哇)咖啡,有一 个人灵机一动说就叫Java怎样, 得到了其他人的赞赏, 于是, Java这个名字就这样传开了 。

 

2.Java的历史:

1995年5月23日,Java语言诞生
1996年1月,第一个JDK-JDK1.0诞生
1996年4月,10个最主要的操作系统供应商申明将在其产品中嵌入JAVA技术
1996年9月,约8.3万个网页应用了JAVA技术来制作
1997年2月18日,JDK1.1发布
1997年4月2日,JavaOne会议召开,参与者逾一万人,创当时全球同类会议规模之纪录
1997年9月,JavaDeveloperConnection社区成员超过十万
1998年2月,JDK1.1被下载超过2,000,000次
1998年12月8日,JAVA2企业平台J2EE发布
1999年6月,SUN公司发布Java的三个版本:标准版、企业版和微型版(J2SE、J2EE、J2ME)
2000年5月8日,JDK1.3发布
2000年5月29日,JDK1.4发布
2001年6月5日,NOKIA宣布,到2003年将出售1亿部支持Java的手机
2001年9月24日,J2EE1.3发布
2002年2月26日,J2SE1.4发布,自此Java的计算能力有了大幅提升
2004年9月30日18:00PM,J2SE1.5发布,是Java语言的发展史上的又一里程碑事件。为了表示这个版本的重要性,J2SE1.5更名为J2SE5.0

题外话:

1.微软与Sun的纠纷

Java诞生的1995年,正是微软在软件产业地位达到巅峰的时代,Windows 95发布时的风光场面给人们留下的深刻印象至今难忘。尽管如此,作为最卓越的技术领袖,比尔?盖茨仍然敏锐地注意到Java。当他了解了Java的一些细节之后,给予了这样的评价:“Java是很长时间以来最优秀的程序设计语言。”基于此,微软于1996年3月申请并获得了Java许可证。微软对于Java的这一热情态度在当时大大提高了人们对Java的兴趣和信心,但也有不少人担心微软会依靠自己强大的影响力在标准之外另立标准,从而破坏Java的纯洁性。
果然,从1997年发布Visual J++的第一个版本开始,微软就开始在Java中掺入自己的私有扩展。这毫无疑问引起Sun的高度重视。1997年10月,Sun向美国加州地方法院起诉微软公司违反两公司就微软使用Java技术所签定的合同,指控微软公司在自己的Java产品中做了“不恰当的修改”,违反了合同中承诺向用户提供Java兼容产品的条款。这一官司旷日持久,直到2001年1月双方达成和解,微软将继续提供采用Sun开发的Java技术的现有产品(包括测试版)。不过,Sun有限制地仅对包括Java 1.1.4的微软产品提供许可。到了2001年7月,微软公布新版的Windows XP将不再支持Sun的JVM,并且推出了.NET平台与Java分庭抗礼。
现在回过头去看,当时的这一场官司对Java世界产生了深远的影响。如果没有这一场官司,也许很多Java程序员都在使用Visual J++,基于WFC开发Windows客户端程序,同时不得不面对被两个不同的事实标准所分裂的Java世界,

/*

个人评论,请勿引用

个人看来微软果然老奸巨猾,产品不怎么样,但是打击对手的本领却是一般的公司难以做到的,VJ++这一招厉害,让原来的很多Java程序员改行用C#了,真他妈厉害,这一点上真的很佩服,比尔也不是图有虚名的,一个字:牛!!

微软当然知道自己理亏嘛,结果肯定赔点钱了事,不过目的已经达到,赔点钱无所谓,反正有的是钱嘛,

*/

2003年4月2 日,Sun与微软达成16亿美元的法律和解。如果不是晚了一天,许多人会以为这是一个在4月1日愚人节开的玩笑。尽管当时所有人都像是看到“太阳从西边出来了”那样张大了嘴巴,但这的确是事实。
根据两家公司达成的版权协议,双方会为采用对方的技术而支付专利费用,微软向Sun提前支付3.5亿美元使用费,Sun则承诺,如果Sun集成微软的某些技术,也会向微软付款。
毫无疑问,“私下了结”的方式对双方而言都是最好的结果。就在协议签署的当天,在美国旧金山由Sun和微软为“抛弃十年恩怨、携手合作“举行的新闻发布会上,尽管比尔.盖茨没有到场,但这并没有防碍现场看起来异常轻松的气氛。麦克尼利和鲍尔默各自穿了一件密歇根州底特律“Red Wings”曲棍球队的运动服,并谈及了一起在哈佛大学读书的经历,麦克尼利还说:“当时我们两人是非常要好的朋友,当然我们也有吵架的时候。”人与人当然可能成为终生的知己,但是公司与公司之间有的只能是利益上的分分合合。

 

2.James Gosling

   Java之父(不怎么喜欢这样的称呼,老土,不过人比较猥琐吧,呵呵,大师都比较猥琐吧);

  作为Java之父,James Gosling的名字可谓是耳熟能详。当人们评论一种编程语言时,总喜欢捎带着把下蛋的母鸡一起带上。Java做为中国的编程语言学习者餐桌上有限的那么几样餐点中的流行款式,自然是让James Gosling风光不已。虽然James Gosling现在已经不是领导Java发展潮流的领军人物了,做为Sun的开发者产品组的CTO,怎么算来也是身居高位了,俗事缠身吧,但是这并不妨碍其对于Java一如既往的爱护,表达着各式各样鲜明的观点,引发一场又一场的争论。
James Gosling是很爱Java的——是啊,哪有当父母的不爱自己的孩子的呢。James Gosling也是很爱Sun的——是啊,哪有当领导的不爱自己的公司的呢。于是我们在批评.NET的安全性的队伍前头,在褒扬Java性能的队伍前头,在抨击SWT开倒车的队伍前头,在给NetBeans大唱赞歌的队伍前头,我们都看到了James Gosling的身影。无论对错、偏见或者固执,至少说明了Gosling的鲜明个性丝毫没有受到年龄的影响。也许也只有这种天才而偏执的人物才能创造出Java这般伟大的语言来吧

 

 

 


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Java制作计算器的实施步骤与技术要点如下: 1. 定义计算器的用户界面:可以使用Java图形用户界面(GUI)库来创建计算器窗口,并添加按钮、文本框和其他必要的组件。 2. 实现计算器的基本功能: - 定义数值按钮和操作符按钮的事件处理程序,以便当用户点击按钮时执行相应的操作。 - 在计算器窗口的文本框中显示用户的输入和计算结果。 - 实现基本的算术运算,例如加法、减法、乘法和除法,以及其他可能的功能,例如求平方根和百分比计算。 3. 处理用户输入: - 使用事件监听器来监听按钮的点击事件和文本框的输入事件。 - 对于数值按钮,将用户的输入追加到文本框中的数值。 - 对于操作符按钮,将用户的输入传递给计算函数,执行相应的操作,并将结果显示在文本框中。 4. 异常处理: - 在进行计算时,要注意处理可能出现的异常情况,例如除数为零或非法的输入。 - 可以使用try-catch语句块来捕获并处理异常,并向用户显示错误消息。 5. 测试和调试: - 在实现过程中,测试每个功能的正确性和稳定性。 - 通过输入不同的数值和操作符进行测试,验证计算器是否产生正确的结果。 - 在调试过程中,可以使用调试工具来跟踪程序的执行流程,并查找和修复代码中的错误。 技术要点: - Java编程语言:使用Java编写计算器程序,并利用Java的面向对象特性进行设计和实现。 - Java GUI库:使用Java Swing或JavaFX等GUI库创建用户界面,定义窗口、按钮和文本框等UI组件。 - 事件处理:使用事件监听器来处理按钮的点击事件和文本框的输入事件,实现按钮和文本框的交互功能。 - 算术运算:使用Java提供的算术运算符和函数来实现基本的算术运算,例如加法、减法、乘法和除法等。 - 异常处理:使用try-catch语句块来捕获和处理可能出现的异常情况,例如除数为零或非法的输入。 - 测试和调试工具:使用测试用例和调试工具来验证程序的正确性和完整性,修复代码中的错误。 ### 回答2: Java制作计算器的实施步骤与技术要点如下: 步骤1:设计计算器界面 首先,需要设计计算器的界面,包括数字键、运算符键、等号键和显示屏等。可以使用Java Swing或JavaFX进行界面设计,选择合适的布局管理器来布置界面元素。 步骤2:实现界面与逻辑的交互 通过添加事件监听器,实现用户点击数字键和运算符键时的交互效果。例如,点击数字键时将数字显示在屏幕上,点击运算符键时将运算符保存起来。 步骤3:实现基本的计算逻辑 根据用户输入的数字和运算符,实现基本的计算逻辑。可以使用Java的数学库提供的函数来进行加减乘除等运算,同时要考虑除以零的异常处理。 步骤4:处理连续运算 允许用户进行连续的运算,例如输入"1+2+3="后显示结果6,并将结果保存下来作为下一次计算的初始值。要注意清空运算符和数字的状态。 步骤5:处理小数点和负数 支持输入小数点和负数,参考相应的输入规则进行处理。可以使用正则表达式来验证用户输入的合法性。 步骤6:处理其他功能 根据需求,可以添加其他功能,如百分号、开方、取反等。根据具体需求选择合适的算法实现。 步骤7:进行测试 编写测试用例对计算器进行全面的测试,包括正常输入、边界输入和异常输入,确保计算器的功能正确和稳定。 技术要点: 1. 熟悉Java Swing或JavaFX的界面设计和事件处理。 2. 熟悉Java数学库提供的数学函数和异常处理。 3. 熟悉正则表达式的使用,来验证用户输入的合法性。 4. 熟悉软件测试的方法和技巧,编写全面的测试用例。 5. 注意界面的用户友好性,例如合理的布局、按钮样式和交互效果。 6. 编写清晰的代码,注重可读性和可维护性,采用合适的设计模式和代码结构。 ### 回答3: 制作一个计算器的实施步骤与技术要点如下: 1. 界面设计:首先,你需要设计一个用户界面,包括数字按钮、运算符按钮和显示屏。你可以使用Swing、JavaFX或者Android等技术来创建用户界面。 2. 事件处理:为每个按钮设置事件监听器,以便在用户点击按钮时执行相应的操作。 3. 数字输入:当用户点击数字按钮时,将数字添加到显示屏上的运算表达式中。 4. 运算符输入:当用户点击运算符按钮时,将该运算符添加到显示屏上的运算表达式中。 5. 运算逻辑:当用户点击等号按钮时,解析显示屏上的运算表达式,并计算结果。可以使用字符串分割和堆栈数据结构来实现运算逻辑。 6. 错误处理:对于无效的运算表达式(例如除以零或缺少操作数),应该给予用户相应的错误提示。 7. 优化与拓展:可以考虑添加括号支持、计算历史记录等功能,以增强计算器的实用性。 技术要点: 1. Java编程语言:计算器可以使用Java来开发,Java提供了丰富的类库和API,用于实现图形用户界面、事件处理、字符串处理等功能。 2. 用户界面库:你可以选择Swing、JavaFX等库来创建计算器的用户界面。这些库提供了各种组件,例如按钮、文本框等,以便你能够创建与用户交互的界面。 3. 事件处理:通过使用监听器接口,你可以捕获按钮的点击事件,并在事件发生时执行相应的操作。 4. 字符串处理:使用字符串处理功能,你可以解析用户在显示屏上输入的运算表达式,并进行相应的计算。 5. 错误处理:使用异常处理机制,你可以捕获和处理运算过程中可能出现的错误,以便给予用户正确的提示或者执行相应的恢复措施。 总之,制作一个计算器需要首先设计用户界面,然后实现事件处理和运算逻辑,同时需要进行错误处理和逻辑优化,以提供稳定和方便的使用体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值