需要掌握的内容:
- 理解java的加载与执行
- 能够自己搭建java的开发环境
- 能够独立编写HelloWorld程序,编译并运行
- 掌握环境变量path的原理以及如何配置
- 掌握环境变量classpath的原理以及如何配置
- java中的注释
- public class 和 class 的区别
1、计算机结构:
计算机包括:
-
硬件
- CPU:中央处理器,负责计算机的核心运算,它是计算机的最核心部件,指挥官。 1 + 1 = 2
- 内存:临时存储区域,程序在运行的过程当中,一些数据的临时存储区域。
- 主板:链接各个部件
- 显卡
- 声卡
- 鼠标
- 键盘
- 硬盘【外存】:永久性保存,断电之后再启动,数据仍然存在。
…
-
软件
-
系统软件
-
windows系列的 -
winxp -
win7 … -
Linux系列的 -
Red Hat -
Fedora -
SUN Solaris … -
应用软件
…
-
总结:
-
应用软件是运行在系统软件当中的,系统软件和底层硬盘交互。 -
Java编程语言可以:完成应用软件的开发。 -
可以用一个功能比记事本强大的文本编辑器进行java程序的编写。 -
windows操作系统默认情况下是不显示文件扩展名的,作为程序员必须将文件的扩展名显示出来:
- 计算机 --> 组织 --> 文件夹和搜索选项 --> 查看 --> 隐藏已知文件类型的扩展名【对勾去掉】 win7
- 计算机 --> 查看 --> 隐藏已知文件类型的扩展名【对勾去掉】 win10
2、windows操作系统当中常用的DOS命令:
-
什么是DOS命令呢? 在DOS命令窗口中才可以输入并执行DOS命令。 在最初的windows计算机中没有图形界面的,只有DOS命令窗口。 也就是说通过执行DOS命令窗口可以完全完成文件的新建、编辑、保存、删除 等一系列操作。 -
不使用UI界面,使用DOS命令可以完成所有的操作。 -
在DOS命令窗口中可以执行DOS命令 -
打开DOS命令窗口:
- 快捷键:win + r,打开运行窗口
- 输入cmd回车
-
查看IP地址:
- ipconfig
- ipconfig /all 可以查看更详细的IP信息,这种查看方式可以看到网卡的物理地址。
物理地址具有全球唯一性。是在生产网卡的时候,嵌入的编号。 -
清屏:cls -
DOS窗口当中也可以设置字体和屏幕以及文字的颜色。 -
退出DOS命令窗口:exit -
怎么从DOS命令窗口当中复制文本: -任意位置点击鼠标右键–>标记 --> 选择你要复制的文本 --> 点击鼠标右键 (此时已经到剪贴板当中了) 找一个位置粘贴即可。 -左键选择你要复制的文本 --> ctrl+c进行复制 (此时已经到剪贴板当中了)–> x选择一个位置ctrl+v粘贴即可。 -
查看两台计算机之间是否可以正常通信:
- ping 192.168.27.23 【发送和接收数据包4次】
- ping 192.168.27.23 -t 【一直不停的发送和接收数据包】
- ping www.baidu.com
- 登录百度:http://119.75.218.70
-
强行终止DOS命令窗口中正在运行的程序:ctrl + c -
打开DOS命令窗口默认所在的路径是:C:\Users\Administrator??? -
创建目录:mkdir abc【表示在当前所在目录下新建一个目录,起名abc】 -
关于目录切换命令:cd
-
查看当前目录下所有的子文件和子目录:dir -
del: 删除一个或者多个文件 删除T1.class文件 C:\Users\Administrator>del T1.class 删除所有.class结尾的文件,支持模糊匹配 C:\Users\Administrator>del *.class T1.class T1.glass del *ass 这个命令就会将T1.class和T1.glass都删除。 删除的一定是能匹配上的。 del *.class 这个命令中的那个“.”不要特殊化,这个“.”其实就是一个普通的字母 -
不要把相关重要的资料放到桌面上,因为桌面是属于C盘系统盘。 -
怎么切换盘符:【不需要使用cd命令】 c: 回车 d: 回车 e: 回车 f: 回车 -
打开注册表:regedit
3、关于windows操作系统当中常用的快捷键:
- win + r 打开运行窗口
- win + d 显示桌面
- win + e 打开资源管理器
- win + L 锁屏
- alt + tab 应用之间的切换
4、“通用的”文本编辑快捷键:
- ctrl + a 全选
- ctrl + c 复制
- ctrl + v 粘贴
- ctrl + s 保存
- ctrl + x 剪切
- ctrl + z 撤销
- ctrl + y 重做
- tab 缩进/多行缩进
- shift + tab 取消缩进
- HOME 回到行首
- END 回到行尾
- shift + home 选中一行
- shift + end 选中一行
- ctrl + shift + 向右或者向左的箭头 选中一个单词
- 鼠标双击: 选中一个单词
- 鼠标三击: 选中一行
- ctrl + end 回到文件末尾
- ctrl + home 回到文件头
5、什么是JDK?
Java Development Kits Java开发工具包【Java开发必备】 可以从Oracle的官网上下载。http://www.oracle.com 下载JDK的时候需要注意:JDK的版本,不同的操作系统需要安装不同版本的JDK。
6、Java分三大块:1999年
-
J2SE【Java的标准版本】: 基础,无论是以后走EE还是ME,SE是必须要精通的。 J2SE是SUN公司为java程序员准备的一套“基础类库”,这套基础类库学习之后,可以完成最基本的操作, 例如,文件的读写、线程的控制… -
J2EE【Java的企业版本】: 这是SUN公司为程序员专门准备的一套“类库”,这套类库可以协助程序员完成企业级软件的开发 企业级软件:OA办公系统、进销存系统、超市系统… -
J2ME【Java的微型版本】 这是SUN公司为java程序员专门准备的另一套“类库”,这套类库可以协助程序员完成微型设备的嵌入式开发, Java最初就是做微型设备嵌入式开发的。 -
2005年,java诞生十周年的时候,以上的三大模块改名了:
7、关键术语:
- JDK【Java开发工具箱】
- JRE【Java的运行时环境】
- JVM【Java虚拟机】
三者之间的关系: JDK 中包含JRE,JRE中包含JVM
8、Java语言特性:
9、Java的加载与执行:一个完整的java程序
1、Java开发的整个生命周期,包括两个重要的阶段,分别是:编译阶段和运行阶段
2、编译生成的程序被称为:字节码程序。编译生成的文件是:xxx.class文件
3、编译和运行可以在不同的操作系统中完成。
4、程序员在xxx.java文件中编写源代码,源代码必须符合java的语法,这些源代码就是高级语言。 存放源代码的文件被称为源文件。
5、过程:
-
编译期:【在windows环境中完成】 安装JDK,配置环境 在硬盘的某个位置创建一个xxx.java源文件 打开源文件,在该文件当中编写符合java语法的源程序,然后保存。 使用JDK中自带的javac.exe命令对以上的java源程序进行编译。 编译通过:说明语法没有问题 在硬盘上生成一个或者多个字节码文件【xxx.class】 编译失败:说明源程序某个位置不符合java语法格式。 编译的语法格式:打开DOS命令窗口,输入:javac 源文件路径 -
注意:
- 源文件路径可以是绝对路径,也可以是相对路径。
- 编译之后,其实java源文件删除不会影响程序的执行。
- 最好不要将java源文件删除,因为程序最终运行效果不是预期效果的时候,需要重新修改java源代码,然后进行重新编译生成全新的class字节码文件,再重新运行字节码程序。
10、什么是类名?
- 假设硬盘上有一个文件,叫做Hello.class,那么类名就叫做:Hello
- 假设硬盘上有一个文件,叫做Student.class,那么类名就叫做:Student
- 假设硬盘上有一个文件,叫做User.class,那么类名就叫做:User
- 假设硬盘上有一个文件,叫做Product.class,那么类名就叫做:Product
11、开始第一个java程序的开发
1、JDK下载
2、JDK安装
3、在硬盘的某个位置上新建一个java源文件:HelloWorld.java
4、在HelloWorld.java文件中编写源代码
5、打开命令窗口,使用javac命令进行编译:
6、配置环境变量
编译1【绝对路径】:D:\course\JavaProjects>javac D:\course\JavaProjects\02-JavaSE\day01\HelloWorld.java 编译2【相对路径】:D:\course\JavaProjects>javac 02-JavaSE\day01\HelloWorld.java 编译3【相对路径】:D:\course\JavaProjects\02-JavaSE\day01>javac HelloWorld.java
7、运行:
12、JDK、JRE、JVM三者之间的关系?
- JDK:Java开发工具箱
- JRE:java运行环境
- JVM:java虚拟机
JDK包括JRE,JRE包括JVM。
JVM是不能独立安装的。
JRE和JDK都是可以独立安装的。
有单独的JDK安装包。
也有单独的JRE安装包。
没有单独的JVM安装包。
安装JDK的时候:JRE就自动安装了,同时JRE内部的JVM也就自动安装了。
安装JRE的时候:JVM也就自动安装了。
13、java程序从开发到最终运行经历了什么?
-
编译期:(可以在windows上)
- 第一步:在硬盘的某个位置(随意),新建一个xxx.java文件
- 第二步:使用记事本或者其它文本编辑器例如EditPlus打开xxx.java文件
- 第三步:在xxx.java文件中编写“符合java语法规则的”源代码。
- 第四步:保存(一定要将xxx.java文件保存一下)
- 第五步:使用编译器(javac【JDK安装后自带】)对xxx.java文件进行编译。
- 第六步:如果xxx.java文件中编写的源代码是符合语法规则的,编译会通过,如果xxx.java文件中编写的源代码违背了语法规则,那么编译器会报错,编译器报错之后class文件是不会生成的,只有编译通过了才会生成class字节码文件。并且一个java源文件是可以生成多个class文件的。(编译实质上是检查语法)
-
运行期(JRE在起作用):(可以在windows上,也可以在其他的OS上。)
- 第七步:如果是在Linux上运行,需要将windows上生成的class文件拷贝过去不需要拷贝源代码,真正运行的是字节码。(但是源代码也不要删除,有用)
- 第八步:使用JDK自带的一个命令/工具:java(负责运行的命令/工具)执行字节码
- 第九步:往下的步骤就全部交给JVM了,就不需要程序员干涉了。
JVM会将字节码文件装载进去,然后JVM对字节码进行解释(解释器负责将字节码 解释为1010101010…等的二进制) - 第十步:JVM会将生成的二进制码交给OS操作系统,操作系统会执行二进制码和硬件进行交互。
-
注意:在以上的过程中,需要使用两个非常重要的命令?
- javac 命令,负责编译
- java 命令,负责运行
-
以上是一个复杂的过程,那么缩减一下,程序员到底要干啥?(编写、编译、运行)
- 新建java文件
- 打开java文件
- 写java源代码
- 保存
- javac命令编译
- java命令运行
?
14、注释
1、注释是对java源代码的解释说明。
注释可以帮程序员更好的理解程序。
2、注释信息只保存在java源文件当中,java源文件编译生成的字节码class文件,class文件中是没有这些注释信息的。
3、在实际的开发中,一般项目组都要求积极的编写注释。这也是一个java软件工程师的基本素养。
4、注释不是写的越多越好,精简,主线清晰,每个注释都应该是点睛之笔。
5、注释方法(3种):
- 单行注释
// 这种注释属于单行注释,只注释两个斜杠后面的
15、HelloWorld程序的执行原理
- java.exe命令会启动JVM
- JVM启动之后会启动类加载器ClassLoader
- ClassLoader会在硬盘上的某个位置搜索HelloWorld.class字节码文件
- 找到该文件则执行
- 找不到该文件则报错
ClassLoader是在哪个位置上搜索HelloWorld.class字节码文件的?
默认情况下,ClassLoader从当前路径下加载xxx.class字节码文件
当然,也可以让ClassLoader去某个指定的路径下加载字节码文件,这时需要配置环境变量classpath
classpath环境变量属于java语言中的环境变量,不属于windows操作系统【PATH环境变量属于操作系统】
classpath是给ClassLoader类加载器指路的。
设置这样的环境变量:classpath=D:\course\JavaProjects\02-JavaSE\day02
打开dos命令窗口在任意位置,都可以执行:java HelloWorld
classpath环境变量没有配置的话,类加载器默认从当前路径下找字节码文件, 当classpath环境变量配置为某个指定的路径之后,类加载器只去指定的路径当中加载字节码文件。
综上所述,环境变量classpath不再配置,这样类加载器会自动从当前路径下加载class字节码文件。 所以,每一次执行.class程序的时候,需要在DOS命令窗口中先切换到.class字节码文件所在的路径下。 然后运行。
当然,classpath也可以这样配置:classpath=.
注意:
对HelloWorld程序进行解释: 需要记忆:
- public
- class
- static
- void
- System.out.println(""); 向控制台输出消息
- 类体
- 方法体
- 类体中不能直接编写java语句【除声明变量之外】
- 一个java语句必须以“;”结束
- 方法体中可以编写多条java语句
- 主方法是程序的入口,固定写法,SUN规定的。
16、关于java代码的编写
在java中任何有效的代码必须写到“类体”当中,最外层必须是一个类的定义。
public表示公开的,class表示定义一个类,Test是一个类名。类名后面必须是一对大括号,这一对大括号被称为“类体”
括号和引号必须是成对的。并且建议都要成对编写,这样才不会丢掉。
代码缩进:
- 我包着你,你就比我低一级。你就需要缩进。
- 没有合理的缩进,代码可读性很差。
- 或者也可以这样说,大括号里的都需要缩进。
- 缩进就是可读性问题,不缩进也不影响程序的编译和执行。
类体/public static void main(String[] args){}:
- 程序的入口,SUN公司java语言规定的
- 也就是说:JVM在执行程序的时候,会主动去找这样一个方法。没有这个规格的方法,程序是无法执行的。
- main方法也可以叫做主方法。
- 注意:
- 方法必须放到“类体”中,不能放到“类体”外面。
- 类体当中应该是方法,而不是直接的java语句。
- 任何一个程序都要有一个入口,没有入口进不来,无法执行。
- 程序的入口只有一个,若有一个一模一样的入口,编译器会报错。
- 一个程序如果没有入口但是没有语法错误的话,编译器不会报错,但运行会报错。
方法体/System.out.println(): - 注意: - 方法体由一行一行的“java语句”构成 - 并且非常重要的是:任何一条java语句必须以“;”结尾,并且这个分号还得是英文的,不能用中文分号。 - “;” 代表一条语句的结束。 - 非常非常重要的是:方法体中的代码遵循自上而下的顺序依次逐行执行。 - System.out.println();这行代码的作用是向控制台输出一句话。就是这个作用。 - 注意:如果println后面小括号里的内容是一个“字符串”的话,必须使用英文双引号括起来。 - 双引号也要成对儿写。
注意的小点:
System.out.println(100);
System.out.println("100");
System.out.println(100 + 200);
System.out.println(200 - 100);
System.out.println(200 * 100);
System.out.println(200 / 100);
17、public class 和 class的区别:
-
一个java源文件当中可以定义多个class -
一个java源文件当中public的class不是必须的 -
一个class会定义生成一个xxx.class字节码文件 -
一个java源文件当中定义公开的类的话,只能有一个,并且该类名称必须和java源文件名称一致。 -
每一个class当中都可以编写main方法,都可以设定程序的入口,想执行B.class中的main方法:java B, 想执行X.class当中的main方法:java X -
注意: -
当在命令窗口中执行java Hello,那么要求Hello.class当中必须有主方法。没有主方法会出现运行 阶段的错误: D:\course\JavaProjects\02-JavaSE\day02>ava Hello 错误: 在类 B 中找不到主方法, 请将主方法定义为: public static void main(String[] args)
|