詹姆斯·高斯林(James Gosling)1997年获得了加拿大卡尔加里大学计算机科学博士学位,毕业后到 IBM 工作,设计 IBM 第一代工作站NeWS系统,但不受重视。后转至Sun公司(Stanford university network)。
1990年,与Patrick,Naughton和Mike Sheriadan等人合作“绿色计划”,后来发展一套语言叫做“Oak”,后改名为Java。
Sun公司于1995年推出
1991年sun公司James Gosling等人开始开发Oak语言
1994年,将Oak语言更名为Java
1996年获得第一笔投资1亿元
1998年提出jdk1.2,更名为java2,之后推出jdk1.3 jdk1.4
2005年更名为jdk5.0,进行了大幅的版本改进
2006年sun公司宣布将Java作为免费软件对外发布
2007年3月起,全世界所有的开发人员均可对Java源代码进行修改
2007年推出jdk6.0
2009年4月Oracle以74亿美元收购了sun公司
2011年7月由Oracle正式发布jdk7
2014年3月正式发布了java8
简单性 高性能
健壮性 解释性
编译性 面向对象
跨平台 分布式处理
通过Java语言编写的应用程序在不同的系统平台上都可以运行。
原理是什么?
只要在需要运行java应用程序的操作系统上,先安装一个Java虚拟机(JVM Java Virtual Machine)即可。由JVM来负责Java程序在该系统中的运行。 因为有了JVM,所以同一个Java程序在三个不同的操作系统中都可以执行。这样就实现了Java程序的跨平台性。也称为Java具有良好的可移植性。
J2SE(Java 2 Platform Standard Edition)标准版
是为开发普通桌面和商务应用程序提供的解决方案,该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发。
J2ME(Java 2 Platform Micro Edition)移动版
是为开发移动设备和嵌入式设备(电器、机器人、机顶盒…)提供的解决方案。
J2EE(Java 2 Platform Enterprise Edition)企业版
是为开发企业环境下的应用程序提供的一套解决方案,该技术体系中包含的技术如 Servlet、Jsp等,主要针对于Web应用程序开发。
JDK(Java DevelopmentKit)是针对Java开发员的产品,是整个Java的核心,包括了Java运行环境JRE、Java工具和Java基础类库。
Java Runtime Environment(JRE)是运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库。
JVM是Java Virtual Machine(Java虚拟机)的缩写,是整个java实现跨平台的最核心的部分,能够运行以Java语言写作的软件程序。
JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。
JDK是整个java开发的核心。
它包含了:
JAVA开发工具(jdk\bin)
基础开发库(jdk\jre\lib\rt.jar)
基础开发库的源码(jdk\src.zip)
通过官方网站获取JDK
https://www.oracle.com/cn/java/technologies/javase/javase-jdk8-downloads.html
针对不同操作系统,下载不同的JDK版本
识别计算机的操作系统
下载完后进行安装,傻瓜式安装,下一步下一步即可。
注意:
1.安装完成后,右击"我的电脑",点击"属性",选择"高级系统设置";
2.选择“高级”选项卡,点击“环境变量”;
然后就会出现如下图所示!!
的画面:
在“系统变量”中设置3项属性,JAVA_HOME、PSTH(大小写无所谓),若已存在则点击“编辑”,不存在则点击‘’新建“。
变量名:JAVA_HOME
变量值:D:\Program Files\Java\jdk1.8.0_45 // 要根据自己的实际路径配置
变量名:Path
变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
开始->运行,键入cmd
键入命令:java -version,出现以下信息,说明环境配置成功。
在每学一门语言之前我们首先要学会hello world的的写法,下面我用java写了一个hello world的输出以及每行代码的讲解;
public class helloworld { public static void main(String[] args){ System.out.println("hello world!"); System.out.printf("hello world!!\n"); System.out.print("hello world!!!"); } }
运行结果:
程序分析:
分析上述代码,从程序开始处介绍。
1.public class helloworld
定义了一个类,类是 “public” 公共类型的,类名为“helloworld”。另外,Java 中主类名应该和要保存的 Java 文件名相同,也就是说,这里定义的类名是“helloworld”,则文件应该保存为“helloworld.java”。
2.public static void main(String[] args)
Java 中的主运行方法,它和 C/C++中的main()作用是一样的,就是所有的程序都从“main()”中开始执行。要执行 Java 程序,必须有一个包括主运行方法的类。至于“public static void”的含义,你可以尝试着去掉,看看编译器会提示什么错误。
3.System.out.println(“Hello world”);
“System.out.println()”是 Java.lang 包的一个方法,用来将字串“Hello world”输出到命令行窗口。另外在java中同样支持printf和print输出,而print输出和println的区别在于前者输出不会换行,后者输出后会有换行。
计算机是不能理解高级语言的,更不能直接执行高级语言,它只能直接理解机器语言,所以使用任何高级语言编写的程序若想被计算机运行,都必须将其转换成计算机语言,也就是机器码。
而这种转换的方式有两种:
1)编译
2)解释
由此高级语言也分为编译型语言和解释型语言。
编译型语言:
使用专门的编译器,针对特定的平台,将高级语言源代码一次性的编译成可被该平台硬件执行的机器码,并包装成该平台所能识别的可执行性程序的格式。
特点:
在编译型语言写的程序执行之前,需要一个专门的编译过程,把源代码编译成机器语言的文件,如exe格式的文件,以后要再运行时,直接使用编译结果即可,如直接运行exe文件。因为只需编译一次,以后运行时不需要编译,所以编译型语言执行效率高。
总结:
1)一次性的编译成平台相关的机器语言文件,运行时脱离开发环境,运行效率高;
2)与特定平台相关,一般无法移植到其他平台;
3)现有的C、C++、Objective等都属于编译型语言。
解释型语言:
使用专门的解释器对源程序逐行解释成特定平台的机器码并立即执行。
特点:
解释型语言不需要事先编译,其直接将源代码解释成机器码并立即执行,所以只要某一平台提供了相应的解释器即可运行该程序。
总结:
1)解释型语言每次运行都需要将源代码解释称机器码并执行,效率较低;
2)只要平台提供相应的解释器,就可以运行源代码,所以可以方便源程序移植;
3)Python等属于解释型语言。
1、首先在官网上面下载idea
网址:https://www.jetbrains.com/idea/
2、选择下载DownLoad
3、下载可能需要注册,不需要理会,等待下载界面出来就行了
4、双击下载好的ideaIU-2018.3.4.exe文件,选择next
5、自定义设置安装目录
6、按照下面的勾选就行了
7、点击install,等待安装成功就行了