第一章 Java开发环境的搭建
- 1、计算机结构:
- 2、Java编程语言可以完成应用软件的开发。
- 3、安装一个功能比记事本强大的文本编辑器——EditPlus
- 4、扩展名显示
- 5、windows操作系统当中常用的DOS命令
- 6、关于windows操作系统当中常用的快捷键
- 7、“通用的”文本编辑快捷键:
- 8、Java语言特性:
- 9、关键术语:
- 10、Java的加载与执行:一个完整的java程序
- 11、什么是类名?
- 12、开始第一个java程序的开发
- 13、打开DOS命令窗口,执行java HelloWorld,执行原理?
- 15、关于java源程序当中的注释:
- 15、对HelloWorld程序进行解释
- 16、public class 和 class的区别:
- 17、总结第一章需要掌握的内容:
1、计算机结构:
硬件
- CPU:中央处理器,负责计算机的核心运算,它是计算机的最核心部件,指挥官。
- 内存:临时存储区域,程序在运行的过程当中,一些数据的临时存储区域。
断电之后或关机之后内存中的数据就消失了 - 外存【硬盘】:永久性保存,断电之后再启动,数据仍然存在。
- 主板:相当于人类的躯干,是一个载体,连接各个部件
…
软件
- 系统软件
- windows系列的
- winxp
- win7
…
- Linux系列的
- Red Hat
- Fedora
- SUN Solaris
…
- windows系列的
- 应用软件
- 百度云管家
- Office办公软件
…
总结:应用软件是运行在系统软件当中的,系统软件和底层硬盘交互。
2、Java编程语言可以完成应用软件的开发。
3、安装一个功能比记事本强大的文本编辑器——EditPlus
安装软件EditPlus需要注意:
- 安装到哪个目录了
- 不要安装额外的插件
- 安装路径中最好不要有中文
…
EditPlus工具的设置:
- windows操作系统当中.txt文件统一采用EditPlus工具打开:设置文件的默认打开程序
- 去除EditPlus工具的默认备份
- 设置EditPlus的字体大小
- 设置EditPlus缩进字符:4
4、扩展名显示
windows操作系统默认情况下是不显示文件扩展名的,作为程序员必须将文件的扩展名显示出来:
* 计算机 --> 组织 --> 文件夹和搜索选项 --> 查看 --> 隐藏已知文件类型的扩展名【对勾去掉】
5、windows操作系统当中常用的DOS命令
-
在哪里执行DOS命令?
在DOS命令窗口中可以执行DOS命令 -
怎么打开DOS命令窗口呢?
1. 快捷键:win + r,打开运行窗口
2. 输入cmd回车 -
在win10系统的DOS窗口中,左键选择文本,右键单击就可以复制了
-
查看IP地址:
ipconfig
ipconfig /all (可以查看更详细的IP信息,这种查看方式可以看到网卡的物理地址。)
物理地址具有全球唯一性。是在生产网卡的时候,嵌入的编号。 -
清屏:
cls -
DOS窗口当中也可以设置字体和屏幕以及文字的颜色。
-
退出DOS命令窗口
exit -
怎么从DOS命令窗口当中复制文本:
任意位置点击鼠标右键–>标记 --> 选择你要复制的文本 --> 点击鼠标右键 (此时已经到剪贴板当中了)
找一个位置粘贴即可。 -
查看两台计算机之间是否可以正常通信:
- 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命令】
c: 回车
d: 回车
e: 回车
f: 回车 -
关于目录切换命令:cd
- cd 命令的语法格式:
cd 路径
- 路径分为:
* 绝对路径(起点带有盘符):
C:\Users\Administrator
D:\用户目录\收藏夹
F:\tools\CamtasiaStudio-v6.00
…
- 相对路径(一定不会以盘符开始):
相对于当前所在的位置作为起点的路径
- 自动补全:
cd e 【然后按tab键,当前所在的目录下所有以e开始的目录自动补全路径,
当这个自动补全的路径不是自己想要的路径,可以继续使用tab键】 -
回到上级目录:cd … 【…是一个路径,代表当前路径的上级路径;.代表当前路径】
cd …/…/…/ -
直接回到根路径:cd \
-
查看当前目录下所有的子文件和子目录:
dir -
del 文件名.文件格式【删除改文件】
del .文件格式【删除该格式所有文件】
del *ass 【可删除.class格式文件】 -
怎么查看本机的IP地址?
config -
怎么查看俩台电脑是否可以通讯
ping 地址 【-t 持续ping】
6、关于windows操作系统当中常用的快捷键
- win + r 打开运行窗口
- win + d 显示桌面
- win + e 打开资源管理器
- win + L 锁屏
- alt + tab 应用之间的切换
7、“通用的”文本编辑快捷键:
- ctrl + y 重做
- shift + tab 取消缩进
- HOME 回到行首
- END 回到行尾
- shift + home 选中一行
- shift + end 选中一行
- ctrl + shift + 向右或者向左的箭头 不用鼠标选中一个单词
- 鼠标双击:选中一个单词
- 鼠标三击:选中一行
- ctrl + end 回到文件末尾
- ctrl + home 回到文件头
8、Java语言特性:
-
简单性:
- 这里的简单说的是相对于C语言来说的。
- 例如:C语言当中有指针,C++中多继承
- java取消了指针的概念,取消了多继承,只支持单继承。
-
Java号称:开源、免费、跨平台、纯面向对象。
- 开源:开发源代码,SUN公司编写的java类库的源代码普通程序员能看到。众人拾柴火焰高。这样java程序会很健壮。很少的BUG【漏洞/陷阱】
- 免费
- 跨平台:依靠JVM机制【java程序不和操作系统交互,java程序运行在JVM中,JVM和操作系统交互。】
不同的操作系统有不同版本的JVM。
-
面向对象:人类在认识现实世界的时候多数是以面向对象的方式认知的。
采用面向对象的方式可以让复杂问题简单化 -
java完美/完美支持多线程开发
-
健壮性(相对于C/C++,这俩者使用不当很容易造成内存泄漏)
- java中还有一种特殊的机制:自动垃圾回收机制。GC机制。【java运行过程当中有一个“垃圾回收器”一直在守护者。】
- JVM负责调度GC机制,程序员不需要干涉
-
可移植 /跨平台
- 有一种特殊的机制:JVM
- Java程序并没有和底层的操作系统直接交互,java程序实际上运行在jvm当中,JVM屏蔽了操作系统之间的差异。
- 但是有一个前提:不同的操作系统中必须安装不同版本的JVM。
- 在可移植性方面表现非常好,一次编译,到处运行。但是为了达到可移植,必须提前在操作系统中安装JRE,JRE有了之后才会有JVM。【JVM不能单独安装】 这方面体验不是特别好
-
Java语言可以编写病毒吗? |
可以,没问题。但是很难让用户中毒。.
中毒的一般都是java程序员。所以很少有人编写java的病毒脚本。
9、关键术语:
-
JDK【Java Development Kit(Java开发工具箱)】
-
JRE【Java的运行时环境】
-
JVM【Java虚拟机】
JVM不能独立安装,JRE和JDK可以。安装JDK的时候:JRE就自动安装了,同时JRE内部的JVM也就自动安装了。安装JRE的时候: JVM也就自动安装了。
三者之间的关系:
JDK 中包含JRE,JRE中包含JVM。
10、Java的加载与执行:一个完整的java程序
- Java开发的整个生命周期,包括两个重要的阶段,分别是:编译阶段和运行阶段
- 编译生成的程序被称为:字节码程序。编译生成的文件是:xxx.class文件
- 编译和运行可以在不同的操作系统中完成。
- 程序员在xxx.java文件中编写源代码,源代码必须符合java的语法,这些源代码就是高级语言。
存放源代码的文件被称为源文件。 - 过程:
- 编译期:【在windows环境中完成】
- 安装JDK,配置环境
- 在硬盘的某个位置创建一个xxx.java源文件
- 打开源文件,在该文件当中编写符合java语法的源程序,然后保存。
- 使用JDK中自带的javac.exe命令对以上的java源程序进行编译。
- 编译通过:说明语法没有问题
- 在硬盘上生成一个或者多个字节码文件【xxx.class】(不是二进制文件,如果是,就不需要JVM了)
- 编译失败:说明源程序某个位置不符合java语法格式。
- 编译的语法格式:打开DOS命令窗口,输入:javac 源文件路径
- 编译期:【在windows环境中完成】
注意:
- 源文件路径可以是绝对路径,也可以是相对路径。
- 编译之后,其实java源文件删除不会影响程序的执行。
- 最好不要将java源文件删除,因为程序最终运行效果不是预期效果的时候,需要重新修改java源代码,然后进行重新编译生成全新的class字节码文件,再重新运行字节码程序。
---------------------------------------------------------------------------
- 运行期:【可以不在windows中完成,可换一个操作系统,但前提是该操作系统中已经安装java的运行时环境】
- 打开命令窗口,在命令窗口中使用java.exe命令运行java程序,语法格式:
java 类名
注意:java这个命令使用的时候,java命令后面不是文件的路径。必须是一个“类名”。
例如:java Hello
- 打开命令窗口,在命令窗口中使用java.exe命令运行java程序,语法格式:
以上程序的执行原理:
- java.exe命令执行会启动:JVM
- JVM启动之后,马上启动“类加载器-Class Loader”
- ClassLoader负责去硬盘的“某个位置”上搜索“类名.class”字节码文件。
- 找不到这个.class文件,一定会出现程序异常现象。
- 找到了这个.class文件之后将.class文件转换成"二进制",操作系统可以直接识别二进制,操作系统执行二进制码和底层的硬件平台进行交互。
11、什么是类名?
- 假设硬盘上有一个文件,叫做Hello.class,那么类名就叫做:Hello
- 假设硬盘上有一个文件,叫做Student.class,那么类名就叫做:Student
- 假设硬盘上有一个文件,叫做User.class,那么类名就叫做:User
- 假设硬盘上有一个文件,叫做Product.class,那么类名就叫做:Product
…
12、开始第一个java程序的开发
-
JDK下载
-
JDK安装(以及JRE)
-
在硬盘的某个位置上新建一个java源文件:HelloWorld.java
-
在HelloWorld.java文件中编写源代码
-
打开命令窗口,使用javac命令进行编译:
javac 源文件路径
出现以下错误:
C:\Users\Administrator>javac 'javac' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
怎么解决?
第一种方案:切换到javac.exe文件所在的目录,这个时候使用javac.exe不会出问题,但是这种方式比较麻烦。
第二种方案:配置环境变量path原理:windows操作系统在查找某个命令的时候是怎么查找的?
- 首先会从当前目录下找这个命令
- 当前目录下不存在这个命令的话,会去环境变量path指定的路径当中查找该命令。
- 还是找不到则出现错误提示信息。
- path环境变量隶属于windows操作系统,和java无关,这个环境变量主要用来指定命令的搜索路径。
环境变量怎么配置?
-
计算机 --> 点击右键 --> 属性 --> 高级系统设置 --> 环境变量
-
环境变量配置包括用户级别和系统级别
任何一个环境变量都有变量名和变量值,例如path环境变量:
变量名是:path
值:路径【多个路径之间必须采用分号隔开,而且要求分号必须是半角分号】
path=C:\Program Files (x86)\Java\jdk1.7.0_75\bin;otherpath;otherpath.....
编译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
-
运行:
- 必须将路径切换到“D:\course\JavaProjects\02-JavaSE\day01”目录下
- 执行:java HelloWorld
- D:\course\JavaProjects\02-JavaSE\day01>java HelloWorld(直接把java源文件拖进DOS窗口也可以)
Hello World!
13、打开DOS命令窗口,执行java 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=.
注意: 路径中“..”表示上级目录 路径中“.”表示当前目录
15、关于java源程序当中的注释:
-
什么是注释?注释的作用是什么?
- 出现在java的源程序当中,对java源代码的解释说明
- 注释不会被编译到.class字节码文件当中
- 一个好的开发习惯应该是多编写注释,这样程序的可读性比较强。
-
java中的注释怎么写呢?
-
单行注释
//单行注释,只注释当前行
-
多行注释
-
/*
多行注释
多行注释
多行注释
多行注释
多行注释
.....
*/
- javadoc注释(注意:这种注释是比较专业的注释,该注释信息会被javadoc.exe工具解析提取并生成帮助文档。)
/**
* javadoc注释
* javadoc注释
* javadoc注释
* javadoc注释
* javadoc注释
* javadoc注释
*/
15、对HelloWorld程序进行解释
需要记忆:
* public
* class
* static
* void
* System.out.println(""); 向控制台输出消息
* 类体
* 方法体
* 类体中不能直接编写java语句【除声明变量之外】
* 一个java语句必须以“;”结束
* 方法体中可以编写多条java语句
* 主方法是程序的入口,固定写法,SUN规定的。
16、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>java Hello
错误: 在类 B 中找不到主方法, 请将主方法定义为:
public static void main(String[] args)
17、总结第一章需要掌握的内容:
* 理解java的加载与执行
* 能够自己搭建java的开发环境
* 能够独立编写HelloWorld程序,编译并运行
* 掌握环境变量path的原理以及如何配置
* 掌握环境变量classpath的原理以及如何配置
* java中的注释
* public class 和 class 的区别