Java不是一门技术而是一个平台,在这个平台下有众多基于java的技术
一.java的发展史
1.1995由sun公司推出的一种高级编程语言
2.2005推出jdk1.5 后改名为jdk5.0
3.现在一般使用jdk8.x(x=…)版本
4.据说2017将推出jdk9.0
二.java的特性
1.是一种纯面向对象的语言
2.与平台无关(可跨平台)
3.健壮性,吸收了c+,c++的语言特点
4.安全性(自动回收垃圾,检查分类,取消了指针)
三.java的两大核心技术
JVM虚拟机
a)什么是JVM
JVM可以理解为能够加载字节码虚拟的操作系统
它有一个解释器,可以完成JVM与电脑直接的通信
(当jvm运行时,解释器就可以向电脑要取一定的空间来完成jvm的运行)
b)JVM能够帮助java跨平台的原理:
java程序运行在JVM上,而jvm有一个解释器组件可以实现与电脑之间的通信,所以不管在任何平台(操作系统)只要安装相应的jvm就可以运行java程序。
GC垃圾回收器
a)自动回收垃圾,检查类型,取消了指针
b)工作原理:当jvm运行时,GC就会自动运行,并在jvm空闲时释放那些可以被释放的内存。
四.java的运行需要一定的运行环境,而JDK就符合这样的条件
1.JDK的结构体系
a.JDK.SE(标准版)
各应用程序的平台,桌面开发和低端商务的解决方案
b.JDK.EE(企业版)
以企业为运行环境开发应用的解决方案
c.JDK.WE(微型版)
致力于消费产品,镶嵌式设备的解决方案
2.JDK是什么?
jdk是java的一种工具集
其中包括:
*.JRE
JRE是java运行时的环境
.JRE的三大功能
1.加载代码:由类加载器完成
2.校检代码:由字节码校检器完成
3.执行代码:由运行时解释器完成
*.JVM
JAVA的运行和维护
*.API(应用程序编程接口)
为编程人员提供已经写好的功能
*.java编译器(javac.exe)java运行时编辑器(java.exe)
java文档化工具(javadoc.exe)
3.JDK的下载与环境变量的配置
因为有专门的一篇介绍jdk的下载,这里就不写了
连接地址(http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)
jdk的环镜变量的配置
1.点击【我的电脑】右击,点击【属性】,点击【高级系统属性】
![这里写图片描述](https://img-blog.csdn.net/20161217115926764?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzcwNDAxNTI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
2.找到【高级】选项,点击【环境变量】
![这里写图片描述](https://img-blog.csdn.net/20161217115953420?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzcwNDAxNTI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
3.在系统变量中找到【path】,点击【编辑】
![这里写图片描述](https://img-blog.csdn.net/20161217120630190?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzcwNDAxNTI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
4.找到所下java的jdk中的bin路径
![这里写图片描述](https://img-blog.csdn.net/20161217120951590?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzcwNDAxNTI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
然后左击鼠标,就会变成如图所示,
![这里写图片描述](https://img-blog.csdn.net/20161217121134738?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzcwNDAxNTI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
然后把上图的路径复制到【path】的【变量值】最后,路径前注意加“;”号,点击确定
![这里写图片描述](https://img-blog.csdn.net/20161217120049561?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzcwNDAxNTI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
5.点击新建,编辑系统变量名,点击确定就完成了
![这里写图片描述](https://img-blog.csdn.net/20161217120110014?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzcwNDAxNTI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![这里写图片描述](https://img-blog.csdn.net/20161217120138780?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzcwNDAxNTI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
注意事项:配置过程中所有的符号都必须是在输入法的英文状态下
说明:
1.配置path路径是为了在dos窗口中找到java,java等相关命令
*dos窗口的进入方法
点击电脑左面最左下角图标,右击,点击运行
![这里写图片描述](https://img-blog.csdn.net/20161217122651434?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzcwNDAxNTI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
如图所示,输入“cmd”点击确定
![这里写图片描述](https://img-blog.csdn.net/20161217122904325?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzcwNDAxNTI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
就打开了,如图
![这里写图片描述](https://img-blog.csdn.net/20161217123004586?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzcwNDAxNTI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
2.设置classpath是为了让jvm知道在哪个目录中加载字节码文件
3.点“.”表示当前目录(源文件同一目录)