目录
1.1 JAVA概述
1.1.1 什么是JAVA
计算机语言(Computer Language)是人与计算机之间通信的语言,它主要是由一些指令组成,这些指令包括数字。符号和语法等内内容,程序员可以通过这些指令来指挥计算机进行各种工作。计算机语言的种类非常多,主要可以分为机器语言、汇编语言、高级语言三大类。计算机所能是别的语言只有机器语言,但人们编程时,不采用机器语言,这是因为机器语言都是由二进制的0和1组成的编码,不便于记忆和识别。目前通用的便哼语言是汇编语言和高级语言,汇编语言采用了英文缩写的标识符,容易识别和记忆;而高级语言采用接近于人类的自然语言进行编程,进一步简化了程序编写的过程,所以,高级语言是目前绝大多数变成者的选择。
JAVA是一种高级计算机语言,它是由SUN公司(已被Oracle公司收购)于1995年5月推出的一种可编写跨平台应用软件,完全面向对象的程序设计语言。JAVA语言简单易用,安全可靠,主要面向 Internet 编程,自问世以来,与之相关的技术和应用发展得非常快。在计算机,移动电话,家用电器等领域中,Java技术无处不在。
为了使软件开发人员,服务提供商和设备生厂商可以针对特定的市场进行开发,SUN公司可将Java划分为三个技术平台,他们分别是Java SE,Java EE,Java ME.
- Java SE(Java Platform Standard Edition)标准版,是为开发普通桌面和商务应用程序提供的解决方案,JavaSE时三个平台中最核心的部分JavaEE和JavaME都是从JavaSE的基础上发展而来的,JavaSE平台中包括了Java最核心的类库,如集合、IO、数据库连接以及网络编程的
- Java EE(Java Platform Enerprise Edition)企业版,是为开发企业级应用程序提供的解决方案。Java EE可以被看作一个技术平台,该平台用于开发,装配以及部署企业级应用程序,其中主要包括Servlet、JSP、JavaBean、JDBC、EJB、Web、Service等技术。
- Java ME(Java Platform Micro Edition)小型版,是为开发电子消费产品和嵌入式设备体提供的解决方案。Java ME 主要用于小型数字电子设备上软件程序的开发。例如:为家用电器增加智能化控制和联网功能,为手机增加新的游戏和通讯录管理功能。此外,Java ME 提供了HTTP等高级Internet协议,使移动电话能以Client/Server方式直接访问Internet的全部信息,提供更高效率的无线交流。
1.1.2 Java语言的特点
Java语言是一门优秀的的编程语言,他之所以应用广泛,受到大众的期待,是因为它有众多突出的特点,其中最主要的特点有以下几个
1.简单
Java语言是一种相对简单的编程语言,他通过最基本的方法来完成指定的任务,只需理解一些基本的概念,就可以用它编写适合与各种情况的的应用程序。Java丢弃了C++中很那里理解的运算符重载,多重继承等模糊的概念。特别是Java语言不使用指针,而是使用引用,提供了自动的垃圾回收机制,是程序员不必为内存管理而担忧
2.面向对象
Java语言中提供了,类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并自持雷雨接口之间的实现机制。Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定,总之,Java语言是一个纯粹的面向对象程序设计语言。
3.安全
Java语言不支持指针,一切通过内存的访问都必须通过对象的实例变量来实现,从而使应用更安全。
4.跨平台
用Java语言编写的程序可以运行在各种平台上,也就是说同一段程序既可以在Windows操作系统上运行,也可以在Linux操作系统上运行。
5.支持多线程
Java语言是支持多线程的。所谓多线程可以简单理解为程序中有多个任务可以并发执行,这样可以在很大程度上提高程序的执行效率
1.2 JDK的使用
1.2.1 什么是JDK
SUN公司提供了一套Java开发环境,简称 JDK(Java Development Kit),它是整个Java的核心,其中包括Java 运行环境、Java 运行工具、Java 文档生成工具、Java 打包工具等。
SUN哦那公司除了JDK还提供了一种 JRE(Java Runtime Environment)工具,它是Java运行环境,是提供给普通用户使用的。由于用户需要运行事先编好的程序,不需要自己动手编写程序,因此 JRE 工具中包含Java 运行工具,不包含 Java编译工具,也就是说开发环境中包含运行环境,这样一来,开发人员只需要在计算机上安装JDK即可,不需要专门安装JRE 工具了。
1.2.2JDK目录介绍
JDK安装结束后,会在硬盘上生成一个目录,该目录被称为JDK安装目录
- bin目录:该目录用于存放一些可执行程序,如javac.exe(Java编译器)、java .exe (Java运行工具) 、jar.exe(Java打包工 具)和 javadoc.exe(文档生成工具)等。
- db目录:db目录是一个小型数据库。从JDK 6.0开始,Java中引入了一个新的成员JavaDB,这是一个纯Java实现、开源的 数据库管理系统。这个数据库不仅很轻便,而且支持JDBC 4.0所有规范,在学习JDBC时,不再需要额外地安装一 个数据库软件,选择直接使用JavaDB即可。
- jre目录:“jre”是 Java Runtime Environment 的缩写,意为Java程序运行时环境。此目录是Java运行时环境的根目录,它包 含Java虚拟机,运行时的类包、Java应用启动器以及一个bin目录,但不包含开发环境中的开发工具。
- include目录:由于 JDK 是通过C和C++实现的,因此在启动时需要引入一些C语言的头文件,该目录就是用于存放这些头文 件的。
- lib目录:lib是library 的缩写,意为Java类库或库文件,是开发工具使用的归档包文件。
- src.zip:文件:src.zip为src文件夹的压缩文件,src中放置的是JDK核心类的源代码,通过该文件可以查看Java基础类的源代 码。值得一提的是:在JDK 的bin目录下放着很多可执行程序,其中最重要的就是javac.exe和java.exe接下来 分别对这两个程序进行详细地讲解。
- javac.exe:是Java编译器工具,它可以将编写好的Java文件编译成Java字节码文件(可执行的Java程序)。Java源文件的扩展名为.java如“HelloWorld.java”.编译后生成的Java 字节码文件的扩展名为.class,如“HelloWorld.class”.
- java .exe: 是 Java运行工具,它会启动一个 Java 虚拟机的进(JVM)进程,Java虚拟机相当于一个虚拟的操作系统,它专门负责运行于Java编译器生成的字节码文件(.class文件)。
1.3 JDK的下载及其环境变量的配置
1.3.1 如何下载JDK
1.首先登陆官网
https://www.oracle.com/index.html
找到左上角的Menu
按我图片里的顺序找到 java Overview 点击进去进到网页最下面会有这样的选项、
然后点击 Download Java for Developers 进入页面后点击 Downloads 页面会这么显示
如果想下载1.8版本JDK就需将页面下滑
下载时一定要勾选 Accept License Agreement这个选项才能下载 选择你要下载的jdk
我的电脑是windows x64位处理器所以我选择了最下面这个
进入下载界面 点击exe文件
very easy 不存在不会的问题。
1.3.2 如何配置系统环境
主要配置的是以下三个:
PATH:你所下载的JDK文件下的bin目录
CLASSPATH:你所下载的JDK文件下的lib目录
JAVA_HOME:你所下载的JDK的当前目录
在计算机---属性---高级系统设置---高级---环境变量---
系统变量里
(1)新建一个变量名为: JAVA_HOME变量值:D:\Java\jdk1.6.0_43即一堆命令所在的目录bin的父目录
(2)新建一个环境变量:CLASSPATH
变量值:// .;%JAVA_HOME%\lib;%JAVA_HOME%\jre\lib;
.;%JAVA_HOME%\lib\dtg,jar;%JAVA_HOME%\jre\lib\tools.jar;
(3)找到系统变量里的path追加值。追加的内容如下:;%JAVA_HOME%\lib;%JAVA_HOME%\jre\lib;
检查是否配置成功:
打开命令提示符界面:h: 输入两个命令:
java -version 回车 检查版本号
javac 回车 出现可选项表示jdk配成功不出现“不是内部或外部命令。。。”即成功

1.4 Java的运行机制
Java程序运行时,必须经过编译和运行两个步骤。
先将后缀名位 .java 的源文件进行编译,最终生成后缀名为 .class 的字节码文件,然后Java虚拟机将字节码文件进行解释执行,并将结果显示出来。
1..Java虚拟机首先将编译好的自己码文件加载到内存,这个过程被称为类加载,它是由类加载器完成的,然后虚拟机针对加载到内存中的Java类进行解释执行,便可看到运行结果
2.Java程序是由虚拟机负责解释执行的,而非操作系统。这样做的好处是可以实现跨平台性,也就是说针对不同的操作系统可以编写相同的程序,只需安装不同版本的虚拟机即可。
不同操作系统需要使用不同版本的虚拟机,这种方式使得Java语言具有“一次编写,到处运行(write once,run anywhere)”的特性,有效地解决了程序设计语言在不同操作系统编译时产生不同机器代码的问题,大大降低了程序开发和维护的成本。
Java程序通过Java虚拟机可以达到跨平台特性,但Java虚拟机并不是跨平台的。也就是说,不同操作系统上的Java虚拟机是不同的,即Windows平台上的Java虚拟机不能用在Linux平台上,反之亦然。
3.编译与运行过程:源文件(.java)--->字节码文件(.class)
注意:源文件只要更改,就需要重新编译 编译过程中会检查语法格式,如果格式错误那么就不会编译成功
5.运行过程:
使jvm运行字节码文件。执行:java 字节码文件名称(不带扩展名)。