Java概述与环境搭建
1. Java语言的特点
面向对象(使用计算机模拟现实世界,解决现实问题,贴近人类思维模式)
简单(相对C、C++,不易造成内存溢出、减少代码量、代码可读性强)
跨平台(操作系统、服务器、数据库)
支持分布式(服务器集群、微服务:针对分布式更细粒度的划分)
支持多线程(Java诞生就支持多线程)
2. 计算机语言执行机制
编译执行: 将源文件编译成机器码,一次编译,多次执行。 执行效率高,不可跨平台。
解释执行: 将源文件一行一行解释,一行一行执行。不同的操作系统具备不同的解释器。 执行效率低,可以跨平台。
3. Java语言执行机制
先编译、再解释: 将源文件编译成字节码文件(平台中立文件.class),再将字节码文件进行解释执行。 Java的设计理念:Write Once Run Anywhere
4. 名词解释
JVM(Java Virtual Machine)虚拟机: 使用软件在不同操作系统中,模拟相同的环境。
JRE(Java Runtime Environment)运行环境: 包含JVM和解释器,完整的Java运行环境。
JDK(Java Development Kit)开发环境: 包含JRE + 类库 + 开发工具包(编译器+调试工具)。
5. 安装JDK
双击打开JDK安装文件,所有选项全部下一步即可。默认安装在C盘Program Files文件夹 Java文件内
路径:C:\Program Files\Java\jdk-17
6. 配置环境变量
右键此电脑===》属性===》高级===》高级系统设置
系统变量===》新建
名:JAVA_HOME
值:安装JDK的根目录 C:\Program Files\Java\jdk-17
再选择Path变量===》双击编辑===》新建
直接写值:%JAVA_HOME%\bin
所有窗口全部确定
7. 测试
徽标(win) + R 呼出DOS命令窗口
输入
javac -version
java -version
以上两个命令都出现版本号表示安装JDK并且配置环境变量成功
8. 配置环境变量相关问题
1.为什么要配置环境变量/配置环境变量的作用是什么?
配置环境变量是将对应的目录通知给操作系统,操作系统就可以去此目录下查找对应的命令。
比如 java 和 javac 命令
2.bin目录的含义
bin表示单词binary的缩写,中文含义表示二进制,表示此目录中用于存放可执行的二进制文件
3.关于classpath环境变量
classpath表示类路径,即JVM加载类对应的路径,
如果配置了此环境变量,务必删除。从JDK1.5不需要人为的配置此环境变量。
4.关于JAVA_HOME变量
不配置JAVA_HOME,在Path中直接书写完整的bin路径也是可以的
但是我们后续使用的一些工具,比如tomcat、maven等等,会默认根据此环境变量来确认本地JDK的版本信息,所以推荐配置此环境变量。
9.DOS命令(了解)
Disk Operation System : 磁盘操作系统 一套用于操作磁盘文件的,纯命令式的系统。
| DOS命令 | 介绍 |
|---|---|
| dir | 查看当前目录 |
| cd + 路径 | 切换到对应路径 |
| cd .. | 回退到上一级目录 |
| 盘符 + 冒号 | 切换盘符 |
| del + 文件名 | 删除文件 |
| rd 文件夹名 | 删除文件夹 |
ipconfig | 查看本机IP地址 |
| cls | 清空屏幕 |
| ↑↓ | 切换之前敲过的DOS命令 |
| shutdown -i | 远程关机命令 |
| shutdown | 取消远程关机 命令 |
| cd + \ | 切换到当前盘符根目录 |
10. 第一个Java程序
10.1 源代码
public class HelloWorld{
public static void main(String [] args){
System.out.print("hello world");
}
}
10.2 单词解释
public :公开的 当前代码中表示公开的类 或者 公开的main方法
class : 类 类是Java代码的基本组成单位
static:静态的 这里表示main方法为静态方法
void :空的 无效的 这里表示main方法没有返回值
main:主要的 主函数 主方法
String:字符串 是JDK提供的一个类 这里注意S大写
System : 系统
out : 输出
print : 打印
10.3 注意事项
1.严格区分大小写
2.标点符号默认都是英文模式的
3.各种括号全部成对出现,不能出现半个
4.合适的缩进,每遇到大括号就换行并且缩进一个tab键的距离
10.4 编译和执行
在当前.java文件地址栏中直接输入cmd回车打开DOS命令窗口
javac + 文件名.java 将java文件编译为class文件
java + 文件名 执行class文件
11. 类的阐述
同一个源文件中可以定义多个类。
编译后,每个类都会生成独立的 .class文件。
一个类中,只能有一个main方法,每个类都可以有自己的main方法
public修饰的类称为公开类,要求类名必须与文件名称完全相同,包括大小写。
一个源文件中,只能有一个公开类。
12.关于记事本中文乱码问题
乱码产生的原因
JVM默认处理文件的编码格式为 GBK,而记事本默认的编码格式为 UTF-8 ,所以乱码是因为编码格式不一致导致的。
解决方案:将记事本的编码格式修改为 GBK即可。记事本编码编码选项中没有GBK,选择ANSI就表示GBK。
编码介绍:
GB2312 : 国标标准版 收录了绝大多数中汉字 简体形式
GBK : 国标扩展版 收录了绝大多数中汉字 简体和繁体形式
UTF-8 : Unicode编码 万国码 收录了全球各个国家的语言文字
ANSI : 在不同的操作系统表示不同的编码,中文操作系统表示GBK。
13. 注释
13.1 单行注释
单行注释用于解释某一行代码的作用
public class SingleLineComment{
public static void main(String [] args){
// 这行代码的作用为打印输出一句话
// println具备换行的效果
System.out.println("hello world 1");
System.out.print("hello world 2"); // 这行代码输出完以后不会换行
}
}
13.2 多行注释
多行注释也可以用于解释某一行代码,或者解释某一段代码的作用
13.3 文档注释
生成外部文档:javadoc -d . HelloWorld.java
/**
* 此类用于讲解文档注释
*/
public class DocumentComment{
/**
* main方法是程序的入口
* main方法的格式是固定的
*/
public static void main(String [] args){
// 单行注释
/* 多行注释 */
System.out.println("HelloWorld");
}
}