第一章 Java开发环境的搭建
1. 常用的DOS命令
1.1 DOS命令是什么
在DOS命令窗口中才可以输入并执行DOS命令,在最初的windows计算机中没有图形界面的,只有DOS命令窗口,也就是说通过执行DOS命令窗口可以完成文件的新建、编辑、保存、删除。
1.2 Java学习中一些基本的DOS命令
- mkdir abc(这个命令不是必须掌握的)make directory(创建目录)
- 切换盘符: 直接输入盘符就行—> d: 回车
- 切换目录:使用cd命令来完成目录的切换:cd是什么含义?change directory(改变目录);格式为:cd 路径(该路径可为相对路径,也可以是绝对路径);当要回到上一级目录时:cd ..(其实在文件夹中是有一个“..”文件的,一个“.”表示当前路径,cd .就是一直在当前路径);当要直接回到根目录时:cd \
- cls :清屏
- dir :查看当前目录下有啥东西。
- exit :退出DOS命令窗口。
- tab键可以补全文件名
- del命令,删除一个或者多个文件,例如:删除T1.class文件—>del T1.class;删除所有.class结尾的文件,支持模糊匹配(删除的一定是能匹配上的,del *ass 这个命令就会将T1.class和T1.glass都删除)
- 在DOS命令窗口中,使用上下箭头可以翻出历史命令。
路径在windows系统上包括:相对路径和绝对路径。
相对路径:相对路径一定是相对于当前所在“位置”而言的,相对路径是一定不会以盘符开始的。
在windows操作系统中凡是路径起点是盘符的都是绝对路径。
- del *.class 这个命令中的那个“.”不要特殊化,这个“.”其实就是一个普通的字母
1.3 在DOS命令窗口中复制内容
- win7:任意位置点击右键-->标记-->选中要复制的内容-->点击右键-->此时就到剪贴板里面了
- win10:左键直接选中,然后右键单击一下就到剪贴板里面了。
1.4 查看本机的IP地址
- IP地址就相当于电话号码
- ipconfig(ip地址的配置信息。)
- ipconfig /all 该命令后面添加一个/all参数可以查看更详细的网络信息,这个详细信息中包括网卡 的物理地址,例如:70-8B-CD-A7-BA-25;这个物理地址具有全球唯一性。物理地址通常叫做MAC地址。
1.5 查看两台计算机是否可以正常通信
- 语法格式:ping IP地址或ping 域名
- ping 61.135.169.121 -t (-t参数表示一直ping),一直ping的目的可以查看网络是否稳定。
- 在一个DOS命令窗口中如果有一个命令一直在执行,想强行终止,可以通过ctrl + c 组合键
2. 文本编辑快捷键
2.1 常用的组合键
复制 ctrl + c
粘贴 ctrl + v
剪切 ctrl + x
保存 ctrl + s
撤销 ctrl + z
重做 ctrl + y
回到行首:home键
回到行尾:end键
当光标在行尾,怎么选中一行:shift + home键
当光标在行首,怎么选中一行:shift + end键
回到文件头:ctrl + home
回到文件尾:ctrl + end
全选:ctrl + a
查找:ctrl + f
选中一个单词:鼠标双击
选中一行:鼠标连续击3次
不用鼠标选中一个单词:ctrl + shift + 右箭头/左箭头
win + d :显示桌面
win + l :锁屏(离开电脑的时候要锁屏)
alt + tab :切换应用
3. 计算机编程语言发展史
3.1 编程语言发展
第一代语言:机器语言
程序员直接编写二进制,一串二进制代码,例如:10010100010010001000….计算机是由电流驱动的,电流只能表示两种状态:正、负。而正可以对应1,负可以对应0。10010010101010…这些二进制码正好和自然世界中的十进制存在转换关系。所以很巧妙的是:计算机可以模拟现实世界当中的事物。
机器语言时期非常具有代表性的就是:打孔机
缺点:
纸带不容易保存,另外打孔的时候是人为操作的,孔有可能打错了。孔打错了纸带就废了。
第二代语言:低级语言
非常具有代表性的:汇编语言
汇编语言比机器语言更接近人类自然语言,但是汇编语言还是需要专业人士进行开发,一般人拿到汇编语言也读不懂。
第三代语言:高级语言
高级语言完全接近人类自然语言,具有代表性的:
C语言:面向过程的
C++语言:一半面向过程,一半面向对象
Java语言:完全面向对象(java语言底层实际上是C++实现的。)
Python语言:面向对象C
….
3.2 计算机编程语言
是一个团队,或者一个组织制定的一套固定的语法规则, 你可以学习这套语法规则,然后通过这套语法规则和计算机交互。
3.3 Java语言的发展史
- 1998年的时候:Java升级到JDK1.2,Java被分为三大块:
J2SE:标准版(基础,要学java,必须先学习SE。基础语法+基础库)
J2EE:企业版(专门为企业开发软件,为企业提供解决方案。例如:OA办公系统….)
J2ME:微型版(专门为微型设备做嵌入式开发的。)
- java诞生十周年改了名字:
JavaSE
JavaEE
JavaME
- JDK(Java开发工具箱,做Java开发必须安装的,这是最根本的一个环境。),是Java最核心的库,不是集成开发环境。
3.4 Java语言的特性
- 简单性:
- 在Java语言当中真正操作内存的是:JVM(Java虚拟机)所有的java程序都是运行在Java虚拟机当中的,而Java虚拟机执行过程中再去操作内存;对于C或者C++来说程序员都是可以直接通过指针操作内存的,C或者C++更灵活,可以直接程序员操作内存,但是要求程序员技术精湛;Java语言屏蔽了指针概念,程序员不能直接操作指针,或者说程序员不能直接操作内存。
这种方式有优点也有缺点:<br /> 优点:不容易导致内存泄漏。(简单了)<br /> 缺点:效率问题<br /> 飞机航行:<br /> 如果是C语言,程序员便是飞机驾驶员。<br /> 如果是Java语言,程序员便是飞机上的乘客。
- Java语言底层是C++,所以JVM是用C++语言写好的一个虚拟的电脑。
- 对于计算机来说:最主要的几个部件是什么?
CPU:
中央处理器,相当于人类的大脑,负责发送并执行指令,是整个计算机的指挥官CPU是负责计算的,负责运算的。10 + 20 = 30,CPU负责将30这个结果算出来。但是在计算过程中有三个数据需要临时找个空间存储一下:这三个数据分别是:10 20 30
内存:
程序运行过程当中的临时数据存储空间。
断电之后或者关机之后内存中的数据就消失了。
硬盘:
持久化设备,硬盘上的数据不会因断电而丢失。
主板:
相当于人类的躯干,是一个载体:
CPU、内存条、硬盘等主要的部件都是放在主板上的,
主板上有很多线,将以上的部件链接起来。
…..
- 面向对象
- 健壮性
主要是因为Java中有一种机制:自动垃圾回收机制(GC机制)。java语言是健壮的,相对于C语言来说,C语言没有Java健壮;Java不容易导致内存的泄漏。C++或者C语言使用不当时很容易导致内存泄漏,JVM负责调度GC机制。程序员不需要干涉。
- 支持多线程并发
- 可移植性/跨平台
java语言只要编写一次,可以做到到处运行。例如:java程序编写完之后,可以运行在window操作系统上,不需要做任何改动可以直接运行在Linux操作系统上,同样也可以运行到MaC OS上面。 一次编写,到处运行。(平台改变了,程序不需要改。)JVM这种机制实现了跨平台(在不同的操作系统上需要使用不同的JVM,即去不同国家旅游需要不同的翻译;是建立在操作系统之上的),那么这种机制优点和缺点分别是什么?
优点:一次编写到处运行,可以跨平台。
缺点:麻烦。对于运行java程序来说必须先有一个JVM,就像你要想在网页上看视频,你必须先安装一个flash是一样的。
Java语言可以编写病毒吗? 可以,没问题。但是很难让用户中毒。 中毒的一般都是java程序员。所以很少有人编写java的病毒脚本。
3.5 JDK、JRE、JVM三者之间的关系
JDK包括JRE,JRE包括JVM。
3.6 Java的加载与执行
注意:
- 编译阶段和运行阶段可以在不同的操作系统上完成
- java源代码一旦编译之后,源代码可以删除,只留下字节码可以执行;但是不建议,删除之后源文件需要修改就比较麻烦了。
- 字节码文件不是二进制文件
- xxx.java源文件经过编译之后生成了A.class、B.class、C.class等文件,那么我们称A是一个类、B是一个类、C是一个类。其中A、B、C是类的名字。
4. 编写java中的第一个java程序
1.安装JDK
2.编写源代码
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello World !!!");
}
}