课时2:Java简介(Java发展概述)

简介: 课时2:Java简介(Java发展概述)摘要:1. Java基础知识:介绍Java作为编程语言及其思想。2. Java的发展历史:从1991年GREEN项目到1995年正式推出,历经网景公司、HotJava浏览器等关键节点。3. Java的版本信息:涵盖从JDK 1.0到JDK 1.8的主要版本及特性,如Lambda表达式和模块化支持。

课时2:Java简介(Java发展概述)

摘要:

1. Java基础知识

2. Java的发展历史

3. Java的版本信息

 

01. Java基础知识

 

本节介绍Java的基础知识。

Java是一门编程语言,但是在很大程度上来讲,Java已经不再局限于是一种编程语言,而形成了一种思想,java从其开始到现在所拥有的支持者是非常多的。众多厂商都支持java的开发技术,随着技术发展也开始使用一些小众语言。语言之间的实现思路都相同,无非是多学习一些语法和概念。

 

02.Java的发展历史

 

Java是使用C++开发出来的,最初java是以一个GREEN项目为主的支持平台,GREEN项目诞生于1991年,当时的主要目的是希望通过email来控制所有家电产品的运行。


通过发送一个email指令,家电接收到指令后就开始运行。实际上就是今天所炒作的物联网概念。不过当时的环境不像现在这样,至少没有智能设备,网络的速度很慢,网络的普及度也不是很高。上网需要使用一个猫modom将模拟信号转为数字信号,再将数字信号转为模拟信号发送给对方。


上网按照分钟计算,上网后下载的最高速度是20k。有56k和36k猫,网络的普及度不高。包括email在今天只能够算是一个广告平台。现在的email发展到今天非常方便。最早没有移动平台时只能在电脑上使用email。最初SUN的工程师们打算使用C++进行开发,不高后来考虑到C++的复杂性,所以利用C++开发出了一套OAK平台。该平台作为GREEN项目的竞标使用。不过OAK并没有竞标成功,也就是说最后OAK没有人去使用。


90年代初的时候有一家网景公司成功的在很短时间内上市了,这家公司的产品就是浏览器(FireFox)。从windows2开始,微软的IE就随着windows的平台安装,所以很多浏览器都没有存活下来。现在为止大部分也放弃了IE,开发都不以IE为标准。于是SUN的工程师开始向网景公司学习浏览器的技术,推出HotJava浏览器。于是在HotJava基础之上,在1995年的时候,SUN公司正式推出了Java的编程语言。在1996年,Java才真正被民众所使用。最初使用的下载工具是网络蚂蚁。


SUN(太阳公司斯坦福大学网络)是一家最早从事于硬件开发的公司。SUN最早是开发硬件,开发的软件在中国比较出名。而Java只是其软件产品。SUN最著名的就是它的小型机(包括最初的亚马逊使用的就是SUN的小型机)。在国外使用云最多的公司就是亚马逊,亚马逊的云服务AWS在国内无法使用,国内只有阿里云或者京东云和腾讯云。


在国外做项目使用的都是亚马逊AWS云。CIA中央情报局在国外使用的也是亚马逊的云服务。不过这家公司正好赶上当年的互联网低潮。在期间中国造就了几颗金蛋,比如电子商务平台8848,是整个中国电子商务行业的金蛋。在之后是整个世界的互联网低潮,再加上新浪和搜狐在美国上市失败,当时国内不看好互联网,世界也不看好互联网。所以SUN就承担着资金负债的压力发展到了2009年后,2009年被oracle收购。当时整个世界的互联网和今天不同。


在中国有很大的软件需求量是因为中国的应用软件部分比世界其它的人群都强。例如亚马逊和京东相比,京东的系统使用更加方便,所以中国的应用软件层次很高。

Java的设计者是James Gosling。以上就是Java的过程。

 

03.Java的版本信息

 

下面是Java的几个版本信息,包含着Java的发展历史。

image.png

首先1995年5月23日,正式推出JDK1.0,Java正式挂牌推出。但是到1996年才可以真正使用下载到Java的开发工具包。1998年12月4日,更名为JDK1.2,更名为Java2。2005年5月23日,推出JDK1.5,Java更名为Triger。现在的最新版本是JDK1.8,最主要的特性是提供了Lambda表达式。Lambda在实际的开发过程中被广泛使用。


据说JDK1.9即将出品,JDK1,9最大的特点在于程序模块化的支持。Java的开发包只存在于两个大的文件包之中,但是造成的负荷量太大,需要导入的包太多。所以引入的概念是将一个包分成多个包进行互相引用,该技术类似于Maven技术,Maven技术最大的特点就是采用模块化方式。在整个Java最初的开发模式一共分为三类:


Java SE(2005年之前称为J2SE):进行单机版程序的开发,往往是作为基础平台;

(单机版程序例如word,word可以在单机平台上使用。在国内最初有一个软件公司永中公司,花费大量时间使用Java写了一套office平台,但是微软并没有公布word或excel编码,没有这些编码格式,这些软件无法打开Office工具所生成的文件。之后微软迫于压力公布出Office源码,在公布完成后产生新的编码DOCX,在之后产生了很多后缀的变化。)


Java ME(2005年之前称为J2ME):是进行移动开发的,不高没赶上好时候;(在Java推广移动开发时,世界上出现了诺基亚。在诺基亚时代做手机开发都使用Java进行。当时做手机开发有三点困难,一方面要忍受资本家的剥削,一方面忍受电信的剥削,最后一点是屏幕大小不统一。所以当时做游戏是同一款游戏做不同版本,适合主流机型。)


后来这项开发已经被Android所取代了,Android发展到今天已经到了瓶颈。Android更新迭代很快。目前Android比IOS好的地方是在移动设备上可以使用Android。Android在很多移动设备例如典型的小米就是依赖Android进行移动信息的获取。


Java EE(2005年之前称为J2EE):是Java开发的企业版。(今天的J2EE和最初的J2EE不同,开发包非常多,对于开发者每天都在接触一些新的软件包和新的API。)

相关文章
|
1月前
|
存储 缓存 算法
JVM简介—1.Java内存区域
本文详细介绍了Java虚拟机运行时数据区的各个方面,包括其定义、类型(如程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区和直接内存)及其作用。文中还探讨了各版本内存区域的变化、直接内存的使用、从线程角度分析Java内存区域、堆与栈的区别、对象创建步骤、对象内存布局及访问定位,并通过实例说明了常见内存溢出问题的原因和表现形式。这些内容帮助开发者深入理解Java内存管理机制,优化应用程序性能并解决潜在的内存问题。
182 29
JVM简介—1.Java内存区域
|
1月前
|
Java C语言 C++
课时9:Java数据类型划分(数据类型划分)
课时9介绍了Java的数据类型划分及其操作。Java数据类型分为基本数据类型和引用数据类型。基本数据类型包括八种:数值型(整形、浮点型)、字符型和布尔型;引用数据类型有数组、类和接口。重点讲解了每种数据类型的默认值、适用场景及选择原则,如整数用int,小数用double,日期时间用Long等。掌握这些内容对编程至关重要。
课时9:Java数据类型划分(数据类型划分)
|
1月前
|
Java
课时12:Java数据类型划分(字符型)
课时12介绍了Java中的字符型数据(char),包括字符的定义、与int类型的转换及应用。通过范例展示了如何观察字符、编码转换、大小写字母互转、保存中文字符,以及Java中字符处理的灵活性。字符型使用单引号声明,可与int互相转换,支持Unicode编码,能表示任何文字,包括中文。虽然实际开发中直接操作字符型的情况不多,但理解其特性有助于更好地编程。
67 17
|
1月前
|
Java
课时14:Java数据类型划分(初见String类)
课时14介绍Java数据类型,重点初见String类。通过三个范例讲解:观察String型变量、"+"操作符的使用问题及转义字符的应用。String不是基本数据类型而是引用类型,但使用方式类似基本类型。课程涵盖字符串连接、数学运算与字符串混合使用时的注意事项以及常用转义字符的用法。
|
1月前
|
Java
课时13:Java数据类型划分(布尔型)
观察布尔型的操作。布尔是一位数学家的名字,这个布尔发明了两个单词:True、False(一个表示真一个表示假)。一般布尔类型都只表示逻辑的计算结果。
|
1月前
|
Java
课时15:Java运算符(基础数学运算符)
课时15介绍了Java中的基础数学运算符,涵盖加、减、乘、除及自增自减运算。强调了运算符的优先级和使用括号的重要性,并通过范例展示了四则运算与自增自减的具体应用。提醒编写代码时应保持简洁,避免复杂的表达式,确保代码易读性和可维护性。
|
1月前
|
Java
课时17:Java运算符(关系运算符)
范例:进行关系判断。如果要进行关系运算的操作可使用:>、<、>=、<=、!=(不等于)、==。所有的关系运算符判断完成的数据返回结果都是布尔类型(boolean)。只要使用关系运算符进行逻辑判断,最终的结果就是布尔型,只有true和false两种结果,而且能和if语句结合使用。
|
1月前
|
Java
课时16:Java运算符(三目运算符)
范例:将两个变量值在大的内容赋值给新变量。三目是一种赋值运算,它指的是根据条件来进行判断。(根据判断的结果来决定赋值内容)对于三目运算的基本使用语法如下: 数据类型 变量 = 布尔表达式 ?条件满足时赋值内容:条件不满足时:赋值内容
|
1月前
|
存储 Java 编译器
课时11:综合实战:简单Java类
本次分享的主题是综合实战:简单 Java 类。主要分为两个部分: 1.简单 Java 类的含义 2.简单 Java 类的开发
|
1月前
|
Java 程序员 数据处理
课时19:Java运算符(位运算符)
课时19介绍Java中的位运算符,涵盖进制转换、位与、位或及移位操作。重点讲解了二进制与其他进制的转换方法,通过具体范例演示了位与和位或运算的过程,并展示了八进制和十六进制的处理方式。此外,还解释了逻辑运算符(&&、||)与位运算符(&、|)的区别及其应用场景,特别是位运算在加密中的应用。
下一篇
oss创建bucket