跟老杨学java系列(三) java语言简介

跟老杨学java系列(三) java语言简介

声明:本节内容较简单,有必定java基础的同窗能够略过本节,欢迎你们留言探讨技术问题。其余问题概不回复。前端

       (书接上回)上节课程咱们简单介绍了咱们的java学习训练方法,从这节课开始,咱们正式进入java语言的学习。后面的课程咱们会先全面了解一下java语言的历史及版本、语言特色、应用领域、开发环境与开发工具等,而后以一个完整的java项目开发过程为线索。逐步展开java语言的学习,在完成整个项目的同时,全面系统学习java语言。在本节课里,咱们将简单介绍java这门编程语言。java

下面我会从三个方面来介绍java这门编程语言。
  1. java发展历史及版本介绍。
  2. java语言特色介绍。
  3. java应用领域介绍。

PS:本节内容主要来自于网络资料的搜集整理。目的是让你们对java语言有个全面的了解和认识。欢迎你们拍砖补充~~~~c++

1、java发展历史及版本介绍
java的起源:

       20世纪90年代,硬件领域出现了单片式计算机系统,使用它能够大幅度提高消费类电子产品(如电视机顶盒、面包烤箱、移动电话等)的智能化程度。Sun公司为了抢占市场先机,在1991年成立了一个称为Green的项目小组,专攻计算机在家电产品上的嵌入式应用。其中项目组成员中包含大名鼎鼎的詹姆斯·高斯林程序员

       因为C++所具备的优点,该项目组的研究人员首先考虑采用C++来编写程序。但c++语言对单片机系统而言,过于复杂和庞大,另外c++语言不能跨平台运行。因此项目组决定根据嵌入式软件的要求,对c++语言进行改造。去除了C++的一些不太实用及影响安全的成分,并结合嵌入式系统的实时性要求,开发了一种称为Oak的面向对象语言(也就是java语言的前身)。web

       另外为了跨平台,在开发Oak语言之前,项目组先定义了符合嵌入式应用须要的二进制机器码指令系统(即后来成为“字节码”指令系统)。设想把此指令系统嵌入硬件,而后Oak语言基于此指令系统运行。以实现跨平台。PS:话说sun挺狠。想控制单片机市场。先让生产硬件的厂商嵌入sun的指令系统。而后用sun开发的Oak语言开发嵌入式应用。正则表达式

       1992年的夏天,当Oak语言开发成功后,sun向硬件厂商演示了项目组开发全套系统。包括Green操做系统、Oak语言、类库和硬件。忽悠广大硬件厂商使用sun的产品开发硬件。可是sun的如意算盘打错了。硬件厂商并未对此产生多大的兴趣。他们认为。在对Oak语言还不了解的状况下。就生产基于sun指令系统的硬件,风险太大。因此Oak也就被搁置下来了。编程

java的诞生:

       转眼到了1995年,互联网的蓬勃发展给了Oak机会。业界为了使死板单调的静态网页可以“灵活”起来,急需一种软件技术来开发可以使网页动起来的小程序。因而,世界各大IT企业为此纷纷投入了大量的人力、物力和财力来开发这种技术。这个时候,Sun公司想起了那个被搁置起来好久的Oak,因为它是按照嵌入式系统硬件平台体系结构进行编写的,因此很是小,特别适用于网络上的传输系统。小程序

       因而,Sun公司首先推出了能够嵌入网页而且能够随同网页在网络上传输的Applet,并将Oak改名为Java(在申请注册商标时,发现Oak已经被人使用了,再想了一系列名字以后,最终,使用了提议者在喝一杯Java咖啡时无心提到的Java词语)。数组

       5月23日,Sun公司在Sun world会议上正式发布Java和HotJava浏览器。IBM、Apple、DEC、Adobe、HP、Oracle、Netscape和微软等各大公司都纷纷中止了本身的相关开发项目,竞相购买了Java使用许可证,并为本身的产品开发了相应的Java平台。至此,java才算是正式诞生了。并不断发展演变至今。浏览器

ps:任何一个伟大产品的出现都是有着传奇历史的。之前是,如今也是.

java版本历史:

1996年1月,Sun公司发布了Java的第一个开发工具包(JDK 1.0),这是Java发展历程中的重要里程碑,标志着Java成为一种独立的开发工具。

1996年10月,Sun公司发布了Java平台的第一个即时(JIT)编译器。

1997年2月,JDK 1.1面世,在随后的3周时间里,达到了22万次的下载量。

1997年4月,Java One会议召开,参会者逾一万人,创当时全球同类会议规模之纪录。

1998年12月8日,第二代Java平台的企业版J2EE发布。

1999年6月,Sun公司发布了第二代Java平台(简称为Java2)的3个版本:J2ME(用于移动环境)、J2SE(用于桌面环境);J2EE(用于服务器环境)。

1999年4月27日,HotSpot虚拟机发布。发布时是做为JDK 1.2的附加程序提供的,后来它成为了JDK 1.3及以后版本的默认虚拟机。

2000年5月,JDK1.三、JDK1.4和J2SE1.3相继发布,几周后其得到了Apple公司Mac OS X的工业标准的支持。

2001年9月24日,J2EE1.3发布。

2002年2月26日,J2SE1.4发布。自此Java的计算能力有了大幅提高,与J2SE1.3相比,其多了近62%的类和接口。在这些新特性当中,还提供了普遍的XML支持、安全套接字(Socket)支持(经过SSL与TLS协议)、全新的I/OAPI、正则表达式、日志与断言。

2004年9月30日,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE 1.5改名为Java SE 5.0(内部版本号1.5.0),代号为“Tiger”,Tiger包含了从1996年发布1.0版本以来的最重大的更新,其中包括泛型支持、基本类型的自动装箱、改进的循环、枚举类型、格式化I/O及可变参数。

2005年6月,在Java One大会上,Sun公司发布了Java SE 6。此时,Java的各类版本已经改名,已取消其中的数字2,如J2EE改名为JavaEE,J2SE改名为JavaSE,J2ME改名为JavaME。

2006年11月13日,Java技术的发明者Sun公司宣布,将Java技术做为免费开源软件对外发布。

2007年3月,全世界全部的开发人员都可对Java源代码进行修改。

2009年,甲骨文公司宣布收购Sun。(PS:免费开源才3年就被收购了。没钱干啥也不行啊。~~~)。

2010年,Java编程语言的共同创始人之一詹姆斯·高斯林从Oracle公司辞职。

2011年,甲骨文公司举行了全球性的活动,以庆祝Java7的推出,随后Java7正式发布。

2014年,甲骨文公司发布了Java8正式版。

2017年,甲骨文公司预计发布Java9正式版。

PS:从版本历史中咱们能看到,java脱离了sun之后,牛人走了,版本更新也变慢了。将来的java将走向何方?咱们拭目以待。~~~~

2、java语言特色介绍
  • 简单性
    Java本来基于c++改进而来,并去除了c++的不少复杂特性和不经常使用特性。像多继承、结构、指针等。
  • 面向对象 
    Java是一门面向对象的语言。java全面支持面向对象的全部特性。
  • 分布性 
    Java设计成支持在网络上应用,它是分布式语言。Java支持各类层次、各类方式的网络链接,因此用户能够设计成分布式的客户机和服务器。特别适合作大型的行业应用
  • 编译和解释性 
    Java代码被编译生成字节码(byte-code),而不是一般的机器码。运行在虚拟机中。它既有编译型语言的特色又有解释型语言的特色。很好的结合了二者的优点。
  • 稳健性 
    一、Java是一个强类型语言,它容许扩展编译时检查潜在类型不匹配问题的功能。
    二、另外Java不支持指针并添加了垃圾回收机制,不用再考虑内存的申请和释放,能够有效防止内存管理错误。
    三、Java解释程序也执行许多运行时的检查,诸如验证全部数组和串访问是否在界限以内。
    四、Java中支持异常处理机制,程序员能够找到出错的处理代码,这就简化了出错处理和恢复的任务。
  • 安全性
    Java的存储分配模型是它防护恶意代码的主要方法之一。Java没有指针,因此程序员不能伪造指针去操做存储器。而且编译的Java代码中的存储引用在运行时由Java解释程序决定实际存储地址。
  • 可移植性
    Java使得语言声明不依赖于实现的方面。例如,Java显式说明每一个基本数据类型的大小和它的运算行为 Java环境自己对新的硬件平台和操做系统是可移植的。Java编译程序也用Java编写,而Java运行系统用ANSI C语言编写。
  • 高性能
    Java是一种先编译后解释的语言,因此它不如全编译性语言快。但比解释语言快。有些状况下性能是很要紧的,为了支持这些状况,Java设计者制做了“及时”编译程序,它能在运行时把Java字节码翻译成特定CPU(中央处理器)的机器代码,也就是实现全编译了。Java字节码格式设计时考虑到这些“及时”编译程序的须要,因此生成机器代码的过程至关简单,它能产生至关好的代码。
  • 并发性
    Java是多线程语言,它提供支持多线程的执行,能处理不一样任务,使具备多线程的程序设计很容易。Java的lang包提供一个Thread类,它支持开始线程、运行线程、中止线程和检查线程状态的方法。而且java也很好的支持线程同步和异步。
  • 动态性
    Java语言设计成适应于变化的环境,它是一个动态的语言。例如,Java中的类是根据须要载入的,甚至有些是经过网络获取的。

PS:java语言特色其实很关键,不少初学者以为这些东西没什么用。你们试想一下,学习一门语言,连这门语言的基本特色都不了解,怎么能学好这门语言呢?(老师!!别忽悠了,继续 还等着下课呢~~~~~)

3、java应用领域介绍

一、Android应用 大多数的 Android应用都是Java程序员开发者开发。虽然 Android运用了不一样的JVM以及不一样的封装方式,可是代码仍是用Java语言所编写。

二、金融服务行业的服务器应用程序 Java在金融服务业的应用很是普遍,不少第三方交易系统、银行、金融机构都选择用Java开发,好比:高盛、花旗等等全世界最牛的金融机构都是使用Java来编写电子交易系统。由于相对而言,Java较安全。Java被普遍用于在服务器端开发,这些应用多数没有任何前端,它们一般是从一个服务器(上一级)接收数据,处理后发向另外一个处理系统(下一级处理)。

三、Java Web应用程序 Java 在电子商务领域以及网站开发领域占据了必定的席位。开发人员能够运用许多不一样的框架来建立web项目,好比:SpringMVC,Spring、mybatis等。即便是简单的 servlet,jsp和以struts为基础的网站在政府项目中也常常被用到。例如医疗救护、保险、教育、国防以及其余的不一样部门网站都是以Java为基础来开发的。

四、嵌入式领域 Java在嵌入式领域发展空间很大。在这个平台上,只需130KB就可以使用Java技术(在智能卡或者传感器上)。本来java就是为嵌入式诞生的。

五、大数据技术 Hadoop以及其余大数据处理技术不少都是用Java,例如Apache的基于Java的HBase和Accumulo以及 ElasticSearchas。

六、高频交易的空间 Java平台提升了这个平台的特性和即便编译,他同时也可以像 C++ 同样传递数据。正是因为这个缘由,Java成为的程序员编写交易平台的语言,由于虽然性能不比C++,但开发人员能够避开安全性,可移植性和可维护性等问题。

七、 科学应用 Java在科学应用中是很好选择,包括天然语言处理。最主要的缘由是由于Java比C++或者其余语言相对其安全性、便携性、可维护性以及其余高级语言的并发性更好。

PS: 看到java的应用领域这么普遍,这么钱景无限~~~俗话说的好:学好数理化,不若有个好爸爸,有个好爸爸,不如学java。

本节课内容简单可是比较多,学起来容易,但码字太累,码字快累死我了~~ 汗!下节课咱们将介绍JAVA开发环境和开发工具。下课!!~~~

本文转自:乐橙谷 www.lechenggu.com

相关文章
相关标签/搜索