当前位置 > 主页 > 万和大讲堂 >


对于Java起源、发展和前景你都知道吗?

2015-07-01 11:23

  时下在各大计算机培训机构,最热门的要数Java培训了,Java语言的适用性,形成了一个Java学习热潮,大家都来学Java,但是对于Java的相关知识,大家都明白吗?


  Java是一种软件技术


  是一种由美国SUN计算机公司(SunMicrosystems,Inc.)所研究而成的语言


  是一种为Internet发展的计算机语言


  是一种使网页(WebPage)产生生动活泼画面的语言


  是一种使网页(WebPage)由静态(Static)转变为动态(Dynamic)的语言


  是一种语言,用以产生「小应用程序(Applet(s))」


  是一种简化的C++语言是一种安全的语言,具有阻绝计算机病毒传输的功能  南京Java培训


  是一种将安全性(Security)列为第一优先考虑的语言


  是一种使用者不需花费很多时间学习的语言


  是一种突破用户端机器环境和CPU结构的语言


  是一种「写一次,即可在任何机器上执行(WriteOnceRunAnywhere)」的语言是有史以来,第一套允使用者将应用程序(Applications)通过Internet从远端的服务器(RemoteServer)传输到本地端的机器上(LocalMachine)并执行


  是一种应用程序提供者不需要知道使用者的计算机硬件(如:Sun,Intel,或MAC等)与软件(如:SW-UNIX,MACO/S,Windows,或NT等)环境的语言(Kestenbaum,1995)。


  1.Java何时开始发展?(When)


  最早大概可追溯至1991年四月份,Sun的绿色计划(GreenProject)开始着手于发展消费性电子产品(ConsumerElectronics),所使用的语言是C、C++、及Oak(为Java语言的前身),后因语言本身和市场的问题,使得消费性电子产品的发展无法达到当初预期的目标,再加上网络的兴起,绿色计划也因此而改变发展的方向,这已是1994年了。


  为何称之为Java?(Why)"Java"是美国SUN计算机公司Java发展小组历经无数次的激烈讨论之后才被选择出。生动(Liveliness)、动画(Animation)、速度(Speed)、交互性(Interactivity)为当初选择名字时所欲表达出的特色。"Java"是在无数的建议中脱颖而出的,而"Java"不是由几个单字的首字所组成,而是从许多程序设计师钟爱的热腾腾、香浓咖啡中产生灵感的。


  谁开发了Java?(Who)Java是美国SUN计算机公司Java发展小组开发的,早期的成员(绿色工程)是PatrickNaughton,JamesGosling,&MikeSheridan,而现在大家较为熟悉的成员是JamesGosling。


  在那里开发了Java?(Where)


  也就是问Java的出生地?答案是美国。


  如何可以找到所需的Java信息?(Howto)


  在网路上,您可以连到Sun公司的JavaWWW网站,URL是http://java.sun.com/,在那里几乎可以找到您所需要的所有Java信息,但是语言多少是一个障碍,至少对某些人而言;没关系,目前国内已有很多个网站提供中文Java信息。在清华和中科院的FTP站点上有不少有关资料。想象以后应会有更多的站点提供相关信息。


  如何才能看到Java的效果?(HowDoI)


  首先您需要有含有Java解释器的浏览器(Browser),例如:Netscpae公司的NetscapeNavigator2.0以上或是Sun公司的HotJava浏览器,对个人计算机使用者而言,操作系统需是Windows95或是WindowsNT。


  Java是因为撰写C++语言程序时的困难而研制开的,起先,只是一个消费性电子产品大计划中的一部份,C++语言是当初被考虑采用的,但从一开始的编译问题一直到最后的一连串问题迫使得放弃C++语言,而有Java语言的产生。Sun是要Java成为一个简单(Simple)、面向对象的(ObjectOriented)、分布式的(Distributed)、解释的(Interpreted)、健壮的(Robust)、安全的(Secure)、结构中立的(ArchitectureNeutral)、可移植的(Portable)、高效能的(HighPerformance)、多线程的(Multithreaded)、动态的(Dynamic)的程序语言(摘译自TheJavaLanguage:AWhitePaper,1995)。南京Java培训


  在Sun的Java语言白皮书中明白地说明上述Java语言的技巧。若以木工为比喻,一个面向对象的木工,他(她)最主要的重点是即将要做的木椅子,其次才是所需要的工具;反之;一个以非面向对象的木工,他(她)所关心的只是工具。最近的即插即用(PlugandPlay)亦是面向对象设计的重点。分布式的(Distributed):Java有一个很周全的程薪录JAVA介绍。


  Java为何有如此这么大的魅力?人作如此的比喻:Java在全球资讯网(WorldWideWeb,WWW)地位就如同电子表格(Spreadsheet)与个人计算机TTP和FTP等TCP/IP通讯协定相配合。Java应用程序(Applications)能在网路上开启及连结使用物件,就如同透过URLs连结使用一个本地文件系统(LocalFileSystem)。健壮的(Robust):由Java所编写出的程序能在多种情况下执行而具有其稳定性。Java与C/C++最大不同点是Java有一个指针模型(PointerModel)来排除内存被覆盖(OverwritingMemory)和毁损数据(CorruptingData)的可能性。


  安全的(Secure):Java是被设计用于网络及分布式的环境中,安全性自必是一个很重要的考虑。Java拥有数个阶层的互锁(Interlocking)保护措施,能有效地防止病毒的侵入和破坏行为的发生。


  结构中立的(ArchitectureNeutral):一般而言,网络是由很多不同机型的机器所组合而成的,CPU和作业系统体系结构均有所不同;因此,如何使一个应用程序可以在每一种机器上执行,是一个难题。所幸,Java的编译器产生一种结构中立的目标文件格式(ObjectFileFormat);这使得编译码得以在很多种处理器中执行。


  可移植的(Portable):原始资料型式的大小是被指定的,例如"float"一直是表示一个32位元IEEE754浮点运算数字,因绝大多数的CPU都具有此共同特征。程序库属于系统的一部份,它定义了一些可移植的程序接口,Java本身具备有很好的可移植性。


  解释的(Interpreted):Java解释器能直接地在任何机器上执行Java位元码(Bytecodes),因此在进行程序连结时,时间的节省,这对于缩短程序的开发过程,有极大的帮助。


  高效能的(HighPerformance):Java位元码迅速地能被转换成机器码(MachineCode),从位元码转换到机器码的效能几乎与C与C++没有分别。


  多线程的(Multithreaded):Java语言具有多线程的功能,这对于交互回应能力及即时执行行为是有帮助的。


  动态的(Dynamic):Java比C或C++语言更具有动态性,更能适应时刻在变的环境,Java不会因程序库的更新,而必须重新编译程序。南京Java培训


  此外,HankShiffman(MakingSenseofJava)亦针一般对Java的错误看法及观念提出他的说明,特在此摘译如下:


  "Java是一种编写WebPages的一种语言,就如同HTML和VRML一样"事实上,Java并不像是HTML此一类的描述语言(DescriptionLanguage),而是一种编程语言(ProgrammingLanguage)。描述语言标明内容和位置,而编程语言描述一种产生结果的过程。


  2."Java语言容易学习和使用,不像C、C++和其它程序语言"


  Java是一种编程语言。Java容易学吗?Java或许是比C或C++容易学,但仍是一种编程语言,而不是一种描述语言。


  3."Java码是可移植的,但C及C++不是"


  Java原代码(SourceCode)是比C语言来得可移植一点,差别在于Java的目标码。Java码在一种机器上进行编译,而能在所有的机器上执行,只要那部机器上有Java解释器。


  4."Java能被拓展而在机器上执行任何事情"


  理论上,JavaApplet(Java小应用程序)能做任何事情,如模拟3DVRML模型、播放电影、产生音频....等。但事实上,一个小应用程序(Applet)仅能在那一页上被执行,而无法在那一页之外执行。同时,Java亦受限于程序库的功能。南京Java培训


  5."Java是适合于建立大型的应用程序"


  如果Java适合于大型程序,则Java就不适合应用于Web浏览器了。第一个商业性的JavaApplets(Applix'sJava-BasedSpreadsheet)并不是全然使用Java,它只使用Java作为用户接口,而所有的处理工作,是用CGI码。


  6."Java是解释执行的,Basic是解释执行的,因此Java=Basic"


  虽然Java的确是使用解释器,但事实上,Java则与C或C++等完全编译语言较为相近,但与Basic或APL等完全解译语言较不相近。


  7."Java删除了CGI命令稿(Scripts)和程序的需求"


  JavaApplets将会取代部份CGI的用途。在有些情况,JavaApplets能够取代一些服务器端代码(Server-SideCode),但大多数的情况,基于安全性理由或是效能的考虑,Java仍无法全然取代CGIScripts。南京Java培训


  8."Netscape'sJavaScript是与Java有相关"


  除了名称之外,Java和JavaScript是有一点点相关。JavaScript是一种命令稿语言,是可以在HTML页中使用。Java码并未出现在HTML中,而在HTML中通过一个链结来链结编译码组。Java和JavaScript之间的关系就如同C语言和CShell一般。


最近开班 more>
  • Python基础班
  • Java全栈开发
  • 前端基础班
  • 软件测试
  • 云原生精英班
  • 云网预科班
  • CISP
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • OCM 12C
  • OCP 19C
  • RHCE 9.0
  • 随时开课
  • 12月26日
  • 随时开课
  • 12月4日
  • 12月16日
  • 12月9日
  • 12月21日
  • 1月6日
  • 12月30日
  • 12月16日
  • 12月21日
  • 12月7日
  • 12月7日
  • ——
  • 随时开课
  • 12月16日
    • 姓 名 :
    • 电 话 :
    • 课 程 :

技术交流群

  • Java大数据交流群560819979加入
  • Python技术交流群595083299加入
  • Oracle技术交流群595119011加入
  • Web前端技术交流群604697610加入
  • Huawei技术交流群482919361加入
  • Redhat技术交流群587875348加入
  • UI设计技术交流群511649801加入
  • Cisco技术交流群596886705加入
  • IT运维技术交流群605888381加入