第一章:初识JAVA
第一章:初识JAVA........................................................................................................................ 3
1.计算机语言发展史...................................................................................................................... 3
1.1机器语言......................................................................................................................... 3
1.2汇编语言......................................................................................................................... 3
1.3高级语言......................................................................................................................... 3
2.JAVA发展简史........................................................................................................................... 4
2.1 JAVA的诞生.................................................................................................................... 4
2.2 SUN公司简介.................................................................................................................. 4
2.3 JAVA为什么被发明.......................................................................................................... 4
2.4 JAVA的发展史................................................................................................................. 4
2.5 JAVA各版本含义............................................................................................................. 5
3.JAVA的特点............................................................................................................................... 5
3.1 JAVA是跨平台的............................................................................................................. 5
3.2 JAVA是简单的................................................................................................................. 5
3.3 JAVA是安全的................................................................................................................. 5
3.4 JAVA是完全面向对象的................................................................................................... 6
3.5 JAVA是健壮的................................................................................................................. 6
4.JAVA跨平台原理........................................................................................................................ 6
4.1 JAVA为什么能够流行...................................................................................................... 6
4.2 JVM虚拟机...................................................................................................................... 6
4.3 JVM和JAVA跨平台特性................................................................................................... 7
4.4 JAVA和C跨平台原理的比较............................................................................................ 7
5.常用DOS命令............................................................................................................................ 8
5.1 DOS简介......................................................................................................................... 8
5.2 DOS命令简介.................................................................................................................. 8
6.JAVA开发环境搭建.................................................................................................................... 9
6.1JRE简介........................................................................................................................... 9
6.2JDK简介........................................................................................................................... 9
6.3配置JAVA开发环境........................................................................................................ 10
6.3.1卸载JDK.............................................................................................................. 10
6.3.2安装JDK.............................................................................................................. 10
6.3.3 验证JDK安装...................................................................................................... 10
6.3.4环境变量配置...................................................................................................... 11
6.3.5验证环境变量配置............................................................................................... 11
7.开发第一个JAVA程序.............................................................................................................. 12
7.1编辑阶段........................................................................................................................ 12
7.2编译阶段........................................................................................................................ 12
7.3执行阶段........................................................................................................................ 13
7.4总结和提升.................................................................................................................... 13
7.5编码风格........................................................................................................................ 14
8.注释........................................................................................................................................ 14
8.1单行注释........................................................................................................................ 14
8.2多行注释........................................................................................................................ 14
8.3文档注释........................................................................................................................ 14
9.常用的开发工具....................................................................................................................... 14
9.1文本编辑器.................................................................................................................... 14
9.2集成开发环境(IDE).................................................................................................... 15
10.反编译工具............................................................................................................................ 15
10.1编译和反编译理解........................................................................................................ 15
10.2反编译命令.................................................................................................................. 15
10.3反编译软件.................................................................................................................. 15
使用0和1来编写代码,开发者需要掌握硬件知识。
使用英文单词来编写,开发者需要掌握硬件知识。
使用英文单词来编写,开发者不需要掌握硬件知识。
在1991年时候, 詹姆斯·高斯林(James Gosling)在SUN公司的工程师小组想要设计这样一种小型计算机语言。该语言主要用于像电视盒这样的消费类电子产品。
Java 2 Enterprise Edition,定位在服务器端的应用。
Java 2 Standard Edition,定位在个人计算机上的应用。
Java 2 Micro Edition,定位在消费性电子产品的应用上。
Java程序的跨平台主要是指字节码文件可以在任何具有Java虚拟机的计算机或者电子设备上运行,Java虚拟机中的Java解释器负责将字节码文件解释成为特定的机器码进行运行。
Java是一种健壮的语言,吸收了C/C++ 语言的优点,但去掉了其影响程序健壮性的部分(如:指针、内存的申请与释放等)
外部环境
JAVA核心优势
JVM(JAVA VIRTUAL MACHINE)是一种规范,可以使用软件来实现,也可以使用硬件来实现,就是一个虚拟的用于执行bytecodes字节码的计算机。他也定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。
JVM是指在一台计算机上由软件或硬件模拟的计算机,它类似一个小巧而高效的CPU。
Java虚拟机是Java最核心技术,也是跨平台的基础。
例如:IBM, SUN, BEA等,当然你也可以自己写一个JVM
例如:比如SUM/Intel公司正在研发的java芯片
计算机的高级编程语言类型一般为: 编译型和解释型。而Java语言是两种类型的结合。
常见java程序的编写和执行步骤为:
1、通过编辑器编写 Java源程序源文件(源文件名.java).
2、通过编译器将源程序编译成字节码文件(类名.class)。
3、通过解释器将字节码文件解释为对应的机器语言并运行(在JVM中运行字节码文件)。
以上图片就是JAVA文件编译成class文件后,class字节码文件在不同设备上执行的过程。通过在不同设备上安装虚拟机,从而实现了跨平台、可移植的功能。
Java:一次编译,到处运行
Java编译器的作用:编译,将源文件编译为字节码文件。
Java虚拟机的作用:解释,把字节码文件转换成对应平台的机器语言。
C:多次编译,到处运行
DOS是英文“Disk Operating System”的缩写,其中文含意是“磁盘操作系统”。DOS是单用户、单任务的操作系统。
从1981年直到1995年的15年间,磁盘操作系统在IBM PC兼容机市场中占有举足轻重的地位。而且,若是把部分以DOS为基础的Microsoft Windows版本,如Windows 95、Windows 98和Windows Me等都算进去的话,那么其商业寿命至少可以算到2000年。微软的所有后续版本中,磁盘操作系统仍然被保留着。
家族包括MS-DOS、PC-DOS、DR-DOS、PTS-DOS、ROM-DOS、JM-OS等,其中以MS-DOS最为著名。虽然这些系统常被简称为“DOS”,但几乎没有系统单纯以“DOS”命名(只有一个毫无关连的1960年代IBM大型主机操作系统以此命名)。此外,有几个和DOS无关、在非x86的微计算机系统上运行的磁盘操作系统在名称中也有“DOS” 字眼,而且在专门讨论该机器的场合中也会简称为“DOS”(例如:AmigaDOS、AMSDOS、ANDOS、AppleDOS、Atari DOS、Commodore DOS、CSI-DOS、ProDOS、TRS-DOS等),但这些系统和DOS可执行文件以及MS-DOS API并不兼容。
切换盘符
d: c:
目录操作
cd change directory 改变当前文件夹 dir directory 查看当前目录下的文件和子文件夹 cd .. 返回上一级目录 cd\ 返回根目录
文件夹操作
md make directory创建当前文件夹 rd remove directory删除当前文件夹
文件操作
copy 复制文件 del delete删除文件
常见辅助命令
exit 退出命令窗口 cls clear screen清除屏幕 tab键 命令自动补齐,帮助自动完成,文件名或者文件夹 上下箭头键 显示之前或者之后已执行过的命令
深入学习DOS命令
help
注意:DOS命令不区分大小写,但是文件或文件夹需要区分大小写。
JRE是Java Runtime Environment的缩写,是Java程序的运行环境,包含了java虚拟机,java基础类库。
JRE是使用java语言编写的程序运行所需要的软件环境,是提供给想运行java程序的用户使用的。
JDK是Java Development Kit的缩写,是java开发工具包,是程序员使用java语言编写java程序所需的开发工具包,是提供给程序员使用的。
JDK包含了JRE,同时还包含了编译java源码的编译器javac,还包含了很多java程序调试和分析的工具。
如果你需要运行java程序,只需安装JRE就可以了。如果你需要编写java程序,需要安装JDK。
总结:JDK包含了JRE,JRE包含JVM。
根据需求再决定是否需要卸载,如果已经正确安装JDK的同学可以略过安装步骤。
下载:Download J2SDK (Java 2 Software Development Kit)
FROM Oracle Java Technologies | Oracle
OR Oracle | Cloud Applications and Cloud Platform
安装: 跟普通软件安装一样,点击下一步就OK!
输入命令:java –version
出现如下图所示,则安装成功:
环境变量就是为相关命令提供一个路径信息,告诉它到哪里去找相关文件信息:
【注意】:配置完java环境变量后,最好重启DOS窗口,重启后新配置的环境变量才能生效。
开发DOS窗口,在任意文件目录(不是在bin目录下)下输入命令:javac
出现如下图所示,则配置成功:
程序员编辑代码并保存在磁盘上(Ctrl+S)。
public class HelloWorld { //大括号是类的控制范围 public static void main(String[] args) { System.out.print("hello world!"); } }
保存为:HelloWorld.java
注意:文件的扩展名,保证扩展名必须为.java(HelloWorld.java)
隐藏文件扩展名步骤:
此电脑 > 查看 勾选文件扩展名
进入java文件所在目录,执行命令:javac HelloWorld.java。
切记:编译时必须加上扩展名.java。
进入java文件所在目录,执行命令:java HelloWorld,以便在虚拟机中执行字节码(.class)文件。切记:运行的是类而非class文件,所以类名后不能加扩展名.class
public class HelloWorld { public static void main(String[] agrs) { System.out.print("hello world"); // print不换行 System.out.println("hello 冯宝宝"); // println换行 } }
文件名:HelloWorld.java
第一次难免会出现很多问题,但是出现问题不要怕,这是一件好事,解决问题的过程就是提成进步的过程。以下是初学者常犯的一些错误:
【注意】如果我们对源代码做了修改,那么需要对修改后的源文件先进行编译,然后再执行编译出来的字节码文件。
注意缩进!
一定要有缩进。缩进就像人得体的衣着一样!
成对编程!
括号、引号都应该写完后,再往里加内容。
见名知意!
最基本的要求!
注释就是程序员为读者(此处的作者指的是开发人员)作的说明的,是一种提高程序可读性的一种手段。源文件编译后,注释不会出现在字节码文件中,即Java编译器编译时会跳过注释语句。
单行注释使用“//”开头,“//”后面的内容均为注释。
多行注释以“/*”开头以“*/”结尾,在“/*”和“*/”之间的内容为注释,在使用多行注释时注意,多行注释不能嵌套。
文档注释以“/**”开头以“*/”结尾,注释中包含一些说明性的文字及一些JavaDoc标签(后期再写项目时,可以生成项目的API)
编译:把源代码编译为字节码文件。
反编译:字节码文件反编译为源代码 。
反编译步骤:
使用jd-gui.exe来实现反编译。