Java从诞生以来就一直活跃于企业中,名企应用天猫,百度,知乎......都是Java语言编写,就连现在使用广泛的XMind也是Java编写的。Java应用的广泛已经到了“无处不用”的盛世,而且一直在语言排行榜榜首,从未被超越。今天带大家认识Java到底是什么?
本系列教程的目标:让大家掌握Java的开发环境搭建,会编写HelloWorld程序,并能够准确的进行编译和运行;理解path和classpath环境变量并可以自行配置。
知识框架:Java语言概述
Java是一门面向对象的编程语言,不仅吸收了c 语言的各种优点,还摒弃了C 里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
目前在世界各地都有Java程序员的存在,你走到哪里也不再孤单,因为有你的Java编程小伙伴在陪伴着你。我们一起来看看世界编程语言排行榜TIOBE(https://www.tiobe.com/tiobe-index/)给出的统计数据。
2018年5月编程语言排行榜
上图是TIOBE排行榜给出的2018年5月份的编程语言排行榜的统计数据,如果你一直在关注编程语言排行榜,那么你应该发现Java的排名多年以来一直在前两名徘徊,并且多数情况下都是以排名第一的形式存在。
Java语言发展史1、1990年末,Sun公司准备为下一代智能家电(电视机,微波炉,电话)编写一个通用的控制系统。该团队最初考虑使用c 语言,很多成员包括sun的首席科学家Bill Joy,发现c 语言在某些方面复杂,系统资源极其有限,缺少垃圾回收系统等,于是Bill Joy决定开发一种新的语言:Oak。
2、1992年夏天,Green计划已经完成新平台的部分功能,包括Green操作系统,Oak的程序设计语言、类库等。同年11月,Green计划被转成“FirstPerson有限公司”,一个Sun公司的全资子公司。该团队致力于创建一种高度互动的设备。
3、1994年夏天,互联网和浏览器的出现不仅给广大互联网的用户带来了福音,也给Oak语言带来了新的生机。James Gosling(Java之父)立即意识到,这是一个机会,于是对Oak进行了小规模的改造。
4、1994年秋,小组中的Naughton和Jonathan payne 完成了第一个Java语言的网页浏览器:WebRunner。Sun公司实验室主任Bert Sutherland 和技术总监Eric Schmidt观看了该网页的演示并给予了高度的评价。当时Oak这个商标已经被注册了,于是将Oak改名为Java。
5、1995年初,Sun公司发布Java语言,Sun公司直接把Java放到互联网上,免费给大家使用,甚至连源代码也不保密,也放在互联网公开。几个月后,Java成了互联网上最热门的宝贝。各种各样的小程序层出不穷,Java终于扬眉吐气,成为了一种广为人知的编程语言。
6、1996年底,Flash问世了,这是一种更加简单的动画设计软件:使用Flash几乎无须任何编程语言知识,就可以做出丰富多彩的动画。Flash逐渐蚕食了Java在网页上的应用。
7、1997年2月18日,Sun公司发布了JDK1.1,增加了即时编译器JIT。
8、1995年Java诞生到1998年底,Java语言虽然成为了互联网上广泛使用的编程语言,但它没有找到一个准确的定位。
9、1998年12月,Sun发布了Java历史上最重要的JDK版本:JDK1.2。并将Java分成了J2EE(提供了企业应用开发相关的完整解决方案)、J2SE(整个Java技术的核心和基础)、J2ME(主要用于控制移动设备和信息家电等有限存储的设备)三个版本。
10、2002年2月,Sun发布了JDK历史上最为成熟的版本,JDK1.4。
11、2004年10月,Sun发布了万众期待的JDK1.5。JDK1.5增加了诸如泛型、增强的for语句、可变数量的形参、注释、自动拆箱和装箱等。
12、2005年,Java诞生十周年,J2SE/J2EE/J2ME分别改名为:JavaSE/JavaEE/JavaME。
13、2006年12月,Sun发布了JDK1.6。
14、2009年4月20日,Oracle甲骨文公司宣布将以每股9.5美元的价格收购Sun。Oracle通过收购Sun获得了两项资产:Java和Solaris。
15、2007年11月,Google宣布推出一款基于Linux平台的开源手机操作系统:Android。Android使用Java语言来开发应用程序。Android平台的流行,让Java语言获得了在客户端程序上大展拳脚的机会。
16、2011年7月28日,Oracle发布了Java SE7,这次版本升级耗时将近5年时间。引入二进制整数、支持字符串的switch语句等。
17、2014年3月18日,Oracle发布了Java SE 8。
18、2017年7月,Oracle发布了JavaSE 9。
19、2018年3月20日,Oracle发布了正式版JavaSE 10。
Java语言的特性在学习Java编程语言之前,让我们一起来看一看它有哪些特性吧?● 简单性:Java语言底层采用C 语言实现,相对于C 来说,Java是简单的,在Java语言中程序员不需要再操作复杂的指针(指针的操作是很复杂的),继承方面也是只支持单继承(C 语言是一种半面向对象的编程语言,支持多继承,多继承会导致关系很复杂),在很多方面进行了简化。
● 面向对象:Java中提供了封装、继承、多态等面向对象的机制。
● 健壮性:在C 程序当中的无用数据/垃圾数据需要编程人员手动释放,当忘记释放内存的时候,会导致内存使用率降低,影响程序的执行;在Java语言当中这种问题得到了解决,因为Java语言引入了自动垃圾回收机制(GC机制),Java程序启动了一个单独的垃圾回收线程,时刻监测内存使用情况,在特定时机会回收/释放垃圾数据,这样会让内存时刻处于最好的状态。
● 多线程:Java语言支持多个线程同时并发执行,同时也提供了多线程环境下的安全机制。
● 可移植性/跨平台:可移植性/跨平台表示Java语言只需要编写/编译一次,即可处处运行。Java代码既可以运行在windows的环境下,又可以运行在Linux的环境下,而不需要修改Java源程序,那么它是怎么做到的呢?功劳全在于“Java虚拟机(Java Virtual Machine,简称JVM)”这种机制,实际上Java程序运行的时候并不是直接运行在操作系统上面的,而是在操作系统上先安装了一个JVM,把Java程序放到了JVM当中运行,JVM屏蔽了各操作系统之间的差异,这样就完成了跨平台。但是,JVM的出现虽然搞定了跨平台,同时也带来了一些问题,比如要想运行Java程序就必须先安装JVM,没有JVM,Java程序是运行不了的,就像你要在网页上看视频,结果浏览器却提示你需要安装Flash插件,这一点你是不是感觉非常不爽呀!那么Java程序、Java虚拟机、操作系统之间是怎样的关系呢?请看下图:
配套视频教程,搭配学习效果更佳哦~~~~
Java零基础入门视频教程
,