JAVA入门
一、JAVA语言概述
(一)编程语言介绍
1、编程语言概念
计算机编程语言是程序设计的最重要的工具,它是指计算机能够接受和处理的、具有一定语法规则的语言。是指用于人与计算机之间通信的语言,是人与计算机之间传递信息的媒介。编程语言是用于人与计算机之间传递信息的,所以人和计算机都能“读懂”。
2、编程语言发展史
正如从甲骨文到现代汉字的演变过程是伴随着巨大的变化一样,计算机语言在诞生的短短几十年里,也经过了一个从低级到高的演变过程。具体地说,它经历了机器语言、汇编语言、高级语言三个阶段。
(1)机器语言
计算机使用的是由“0”和“1”组成的二进制数,在计算机诞生之初,人们只能用计算机的语言对计算机发出指令,即写出一串串由“0”和“1”组成的指令序列交由计算机执行,这种计算机认识的语言,就是机器语言。
早期的程序设计均使用机器语言。程序员们将用0, 1数字编成的程序代码打在纸带或卡片上,1打孔,0不打孔,再将程序通过纸带机或卡片机输入计算机,进行运算。
(2)汇编语言
为了克服机器语言难读、难编、难记和易出错的缺点,人们就用与代码指令实际含义相近的英文缩写词、字母和数字等符号来取代指令代码(如用ADD表示运算符号“+”的机器代码),于是就产生了汇编语言。所以说,汇编语言是一种用助记符表示的仍然面向机器的计算机语言。汇编语言由于是采用了助记符号来编写程序,比用机器语言的二进制代码编程要方便些,在一定程度上简化了编程过程。汇编语言的特点是用符号代替了机器指令代码。而且助记符与指令代码一一对应,基本保留了机器语言的灵活性。使用汇编语言能面向机器并较好地发挥机器的特性,得到质量较高的程序。
(3)高级语言
不论是机器语言还是汇编语言都是面向硬件的具体操作的,语言对机器的过分依赖,要求使用者必须对硬件结构及其工作原理都十分熟悉,这对非计算机专业人员是难以做到的,对于计算机的推广应用是不利的。计算机事业的发展,促使人们去寻求一些与人类自然语言相接近且能为计算机所接受的语意确定、规则明确、自然直观和通用易学的计算机语言。这种与自然语言相近并为计算机所接受和执行的计算机语言称高级语言。高级语言是面向用户的语言。
3、高级语言介绍
Fortran语言
20世纪50年代由美国约翰·贝克斯(John Backus)创造出了第一个计算机高级语言——FORTRAN语言。
主要应用在科学计算领域(气象数据处理、数字处理算法、计算物理、计算化学等)。
(2)pascal 语言
第一个结构化编程语言。被称为“编程语言里一个重要的里程碑”。现在是国际和全国青少年信息学奥林匹克竞赛指定的语言之一。
(3)C语言
C语言的祖先是BCPL(Basic Combined Programming Language)语言,在1970年美国贝尔实验室的Ken Thompson在BCPL语言的基础上,设计出了B语言。接着在1972到1973年间,美国贝尔实验室的Dennis M.Ritchie在Ken Thompson的基础上设计出了C语言。
C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言描述问题比汇编语言迅速、工作量小、可读性好、易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编语言代码生成的目标程序效率低10%~20%。因此,C语言可以编写系统软件。
应用领域:系统软件、驱动程序、数据库、办公软件、嵌入式开发、游戏引擎......
(4)C++
C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++不仅拥有计算机高效运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。
应用领域:科学计算、操作系统、游戏、虚拟现实、数字图像处理、网络软件(浏览器等)、驱动程序......
(5)Objective-C
Objective-C,通常写作ObjC或OC是扩充C的面向对象编程语言。Objective-C的流行归功于iPhone的成功。编写iPhone应用程序的主要编程语言是Objective-C。
应用领域:iOS操作系统、iOS应用程序、iPad OS操作系统、iPad OS应用程序、
Mac OS X操作系统、Mac OSX 上的应用程序
(6)Python
Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。
应用领域:Web 和 Internet开发、科学计算和统计、人工智能、桌面界面开发、软件开发、后端开发、网络爬虫......
(7)java
Java是由Sun Microsystem于1995年推出的高级编程语言。进入21世纪,Java企业级应用飞速发展,主要被运用于电信、金融、交通等行业的信息化平台建设。Java是一个普遍适用的软件平台,平台独立、可移植、多线程、健壮、动态、安全等主要特性。
(二)JAVA语言应用领域
1、银行金融
2、电子政务
3、电商网站
4、安卓应用
很多的安卓系统的APP都是基于Java语言开发的。
5、大数据
一些流行的工具是Apache Hadoop,Apache Spark,Apache Storm,Flink等等,这些工具中的大多数都是基于Java的,Java概念被广泛用于数据处理。
(三)Java语言发展史
1995年5月23日,Java语言诞生。Sun公司直接把Java放到互联网上,免费给大家使用,甚至连源代码也不保密,也放到互联网上向所有人公开。
1996年年初,发布了JDK1.0。这个版本包括两部分:运行环境(即JRE)和开发环境(即JDK)。
1997年2月18日发布了JDK1.1。JDK1.1增加了JIT(即时编译)编译器,让JDK在效率上有了较大提升。
1998年12月,Sun发布了Java历史上最重要的JDK版本:JDK1.2,伴随着JDK1.2一同发布的还有JSP/Servlet、EJB等规范,并将Java分成J2EE、J2SE和J2ME三个体系。
2000年5月 J2SE1.3。
2002年2月 J2SE1.4。
2004年10月,发布了JDK1.5。同时,Sun将JDK1.5改名为Java SE5.0,J2EE、J2ME也相应地改名为Java EE和Java ME。
2006年12月JavaSE6.0
2009年04月20日,甲骨文(Oracle)74亿美元收购Sun。
2011年7月 JavaSE7.0
2014年3月 JavaSE8.0(市场主流版本)
2017年9月22日,Oracle公司发布了Java SE 9
......
2020年9月19日,Oracle公司发布了JavaSE 15
2021年10月,Oracle公司发不了JavaSE 17
(四)Java语言体系
J2SE(更名为JavaSE)
Standard Edition
是整个Java技术的核心和基础,它是J2ME、J2EE的编程基础
J2EE(更名为JavaEE)
Enterprice Edition
Java技术中应用最广泛的部分,J2EE提供了企业应用开发相关的完整解决方案
J2ME(更名为JavaME)
Mirco Edition
主要用于控制移动设备和信息家电等有限存储的设备
(五)语言特点
一种面向对象的语言
一种半编译半解释型语言
半编半解语言
Java的源文件不能直接运行,需要经过编译器编译,编译成字节码文件(.class)。
字节码文件也不是cpu可以直接识别的命令,而是需要解释器解释运行
一种平台无关的语言(跨平台)
跨平台特性
平台:指的是操作系统(Windows,Linux,Mac)
跨平台:Java程序可以在任意操作系统上运行(一次编写到处运行)
即java程序可以在不同操作系统上均可以运行。(java可以运行的程序是.class文件相当于Windows中的.exe文件)
原理:实现跨平台需要依赖Java的虚拟机 JVM (Java Virtual Machine)
注意:Java字节码借助于JVM可以实现跨平台,但是JVM本身不跨平台,需要针对不同的操作系统开发不同版本的JVM
(六)关于Java的大事件
2009年4月20日甲骨文(Oracle)以现金收购Sun微系统公司,交易价格达74亿美元。
二、Java开发环境搭建
(1)JDK、JRE、JVM
1、JDK
JDK(Java SE Development Kit),Java标准开发包,它提供了编译、运行Java程序所需的各种工具和资源,包括Java编译器、Java运行时环境,以及常用的Java类库等。
要进行Java开发,必须按照JDK!
2、JRE
JRE( Java Runtime Environment) 、Java运行环境,用于解释执行Java的字节码文件。普通用户而只需要安装 JRE(Java Runtime Environment)来运行 Java 程序。而程序开发者必须安装JDK来编译、调试程序。
3、JVM
JVM(Java Virtual Mechinal),Java虚拟机,是JRE的一部分。它是整个java实现跨平台的最核心的部分,负责解释执行字节码文件,是可运行java字节码文件的虚拟计算机。所有平台的上的JVM向编译器提供相同的接口,而编译器只需要面向虚拟机,生成虚拟机能识别的代码,然后由虚拟机来解释执行。
总结:
JDK:java开发工具包(JRE+给开发人员用的工具)
JRE:Java运行环境(JVM+核心类库)
JVM:Java虚拟机(实现Java跨平台的方式)
JDK>JRE>JVM
(2)JDK的下载和安装
1、下载
下载地址:
https://www.oracle.com/java/technologies/downloads/
2、安装
windows系统,双击安装即可。
3、验证安装
进入命令窗口,切换到jdk的bin目录,输入java -version如果能看到版本信息,说明安装成功。
4、JDK目录介绍
(3)配置环境变量
1、JAVA_HOME配置
(1)步骤
此电脑点击鼠标右键,选择属性。
点击高级系统设置。
点击环境变量。
点击新建
设置变量名和变量值
(2)作用
1、简化Path环境变量的配置。
2、一些软件的启动(例如IDEA、Tomcat等)需要读取系统中的JAVA_HOME,如果JAVA_HOME配置不正确会导致这些软件无法启动。
2、Path配置
(1)步骤
选择Path变量,点击编辑。
点击新建。
设置变量值,点击确定。
(2)作用
在Path中设置JDK的bin目录,使bin目录下的命令在任何路径下都可以使用。
三、HelloWorld程序
(一)程序开发步骤
开发环境已经搭建完毕,可以开发我们第一个Java程序了。
Java程序开发三步骤:编写、编译、运行。
(二)编写源程序
1、创建文档
在D盘根目录下创建一个文本文档
2、编写代码
打开文本文档,编写如下代码
public class HelloWorld{
public static void main(String[] args){
System.out.println("helloworld");
}
}
3、修改文件名和后缀名
修改文件名为 HelloWorld.java
(三)编译
打开命令窗口切换到源文件所在路径,执行javac命令
会生成与.java文件同名的.class文件
(四)运行
使用java命令运行程序
注意:运行时不要带文件后缀名class
(五)注意事项
源文件后缀名一定要是.java(注意需要显示系统中的文件后缀名)
运行时直接写java HelloWorld即可,不需要.class后缀名
如果修改了代码,需要重新编译然后再运行
自己在动手写的时候一定要注意单词拼写、标点符号(全英文状态)
四、开发工具
(一)概述
要开发java程序就一定要相应的开发工具。常见的开发工具包括文本编辑工具和IDE工具
1、文本编辑工具
记事本、Notepad++、EditPlus … 文本编辑工具。
2、IDE工具
集成开发环境(IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境。
JCreator、JBuilder、NetBeans、eclipse、IntelliJ Idea等。
(二)IntelliJ IDEA
1、简介
是用于java语言开发的集成环境(也可用于其他语言),IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。
2、下载
下载地址:https://www.jetbrains.com/idea/download/
3、安装
子主题 4
4、配置和使用
(1)配置
a、修改编码格式
b、调整字体大小
c、调整主题
d、快捷键设置
(2)创建工程
双击启动
同意使用协议。
选择试用30天。
点击Create New Project 创建新项目。
配置使用自己的JDK。
点击Finish创建工程。
(3)编写和运行
创建包(文件夹)
创建源文件
编写代码
运行
控制台查看运行结果
作业:
1、掌握JDK、JRE、JVM之间的区别和联系
1.三者联系:
JVM不能单独搞定class的执行,解释class的时候JVM需要调用解释所需要的类库lib。在JDK下面的的jre目录里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。JVM+Lib=JRE。总体来说就是,我们利用JDK(调用JAVA API)开发了属于我们自己的JAVA程序后,通过JDK中的编译程序(javac)将我们的文本java文件编译成JAVA字节码,在JRE上运行这些JAVA字节码,JVM解析这些字节码,映射到CPU指令集或OS的系统调用。
2.三者区别:
a.JDK和JRE区别:在bin文件夹下会发现,JDK有javac.exe而JRE里面没有,javac指令是用来将java文件编译成class文件的,这是开发者需要的,而用户(只需要运行的人)是不需要的。JDK还有jar.exe, javadoc.exe等等用于开发的可执行指令文件。这也证实了一个是开发环境,一个是运行环境。
b.JRE和JVM区别:JVM并不代表就可以执行class了,JVM执行.class还需要JRE下的lib类库的支持,尤其是rt.jar。
2、理解Java跨平台的原理
一次编译,到处运行
3、搭建Java开发环境(下载/安装/配置/验证)
4、能够完成HelloWorld代码的编写并正常运行
5、安装和配置IntelliJ IDEA,使用IDEA编写HelloWorld程序并运行出结果。
记事本方式和idea方式 打印每个人的名字,打印每个人的家乡(使用英文)
笔记总结(思维导图/笔记/手写)
JDK(Java SE Development Kit),Java标准开发包,它提供了编译、运行Java程序所需的各种工具和资源,包括Java编译器、Java运行时环境,以及常用的Java类库等。
要进行Java开发,必须按照JDK!
2、JRE
3、JVM
总结:
JDK:java开发工具包(JRE+给开发人员用的工具)
JRE:Java运行环境(JVM+核心类库)
JVM:Java虚拟机(实现Java跨平台的方式)
JDK>JRE>JVM
(2)JDK的下载和安装
1、下载
下载地址:
https://www.oracle.com/java/technologies/downloads/
2、安装
windows系统,双击安装即可。
3、验证安装
进入命令窗口,切换到jdk的bin目录,输入java -version如果能看到版本信息,说明安装成功。
4、JDK目录介绍
(3)配置环境变量
1、JAVA_HOME配置
(1)步骤
此电脑点击鼠标右键,选择属性。
点击高级系统设置。
点击环境变量。
点击新建
设置变量名和变量值
(2)作用
1、简化Path环境变量的配置。
2、一些软件的启动(例如IDEA、Tomcat等)需要读取系统中的JAVA_HOME,如果JAVA_HOME配置不正确会导致这些软件无法启动。
2、Path配置
(1)步骤
选择Path变量,点击编辑。
点击新建。
设置变量值,点击确定。
(2)作用
在Path中设置JDK的bin目录,使bin目录下的命令在任何路径下都可以使用。
三、HelloWorld程序
(一)程序开发步骤
开发环境已经搭建完毕,可以开发我们第一个Java程序了。
Java程序开发三步骤:编写、编译、运行。
(二)编写源程序
1、创建文档
在D盘根目录下创建一个文本文档
2、编写代码
打开文本文档,编写如下代码
public class HelloWorld{
public static void main(String[] args){
System.out.println("helloworld");
}
}
3、修改文件名和后缀名
修改文件名为 HelloWorld.java
(三)编译
打开命令窗口切换到源文件所在路径,执行javac命令
会生成与.java文件同名的.class文件
(四)运行
使用java命令运行程序
注意:运行时不要带文件后缀名class
(五)注意事项
源文件后缀名一定要是.java(注意需要显示系统中的文件后缀名)
运行时直接写java HelloWorld即可,不需要.class后缀名
如果修改了代码,需要重新编译然后再运行
自己在动手写的时候一定要注意单词拼写、标点符号(全英文状态)
四、开发工具
(一)概述
要开发java程序就一定要相应的开发工具。常见的开发工具包括文本编辑工具和IDE工具
1、文本编辑工具
记事本、Notepad++、EditPlus … 文本编辑工具。
2、IDE工具
集成开发环境(IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境。
JCreator、JBuilder、NetBeans、eclipse、IntelliJ Idea等。
(二)IntelliJ IDEA
1、简介
是用于java语言开发的集成环境(也可用于其他语言),IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。
2、下载
下载地址:https://www.jetbrains.com/idea/download/
3、安装
子主题 4
4、配置和使用
(1)配置
a、修改编码格式
b、调整字体大小
c、调整主题
d、快捷键设置
(2)创建工程
双击启动
同意使用协议。
选择试用30天。
点击Create New Project 创建新项目。
配置使用自己的JDK。
点击Finish创建工程。
(3)编写和运行
创建包(文件夹)
创建源文件
编写代码
运行
控制台查看运行结果
1、掌握JDK、JRE、JVM之间的区别和联系
1.三者联系:
JVM不能单独搞定class的执行,解释class的时候JVM需要调用解释所需要的类库lib。在JDK下面的的jre目录里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。JVM+Lib=JRE。总体来说就是,我们利用JDK(调用JAVA API)开发了属于我们自己的JAVA程序后,通过JDK中的编译程序(javac)将我们的文本java文件编译成JAVA字节码,在JRE上运行这些JAVA字节码,JVM解析这些字节码,映射到CPU指令集或OS的系统调用。
2.三者区别:
a.JDK和JRE区别:在bin文件夹下会发现,JDK有javac.exe而JRE里面没有,javac指令是用来将java文件编译成class文件的,这是开发者需要的,而用户(只需要运行的人)是不需要的。JDK还有jar.exe, javadoc.exe等等用于开发的可执行指令文件。这也证实了一个是开发环境,一个是运行环境。
b.JRE和JVM区别:JVM并不代表就可以执行class了,JVM执行.class还需要JRE下的lib类库的支持,尤其是rt.jar。
2、理解Java跨平台的原理
一次编译,到处运行