1.Java核心机制-Java虚拟机[JVMjavavirtualmachine]
- JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器,包含在JDK中.
- 对于不同的平台,有不同的虚拟机。
- Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”
2.什么是JDK,JRE
- JDK的全称(JavaDevelopmentKit Java开发工具包).JDK=JRE+java的开发工具[java,javac,javadoc,javap等]
- JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用在单独安装JRE了。
- JRE(JavaRuntimeEnvironmentJava运行环境)JRE=JVM+Java的核心类库[类],包括Java虚拟机(JVMJavaVirtualMachine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
- JDK、JRE和JVM的包含关系 JDK=JRE+开发工具集(例如Javac,java编译工具等) JRE=JVM+JavaSE标准类库(java核心类库) 如果只想运行开发好的.class文件只需要JRE
3.配置环境变量
3.1 为什么要配置环境变量?
如果没有配置环境变量直接使用java命令,会出现以下错误提示 错误原因:当前执行的程序在当前目录下如果不存在,系统会在系统中已有的一个名为path的环境变量指定的目录中查找。 如果仍未找到,会出现以上的错误提示。 所以进入到jdk安装路径\bin目录下,执行javac,会看到javac参数提示信息。
3.2 配置环境变量步骤
- 我的电脑 - 属性 - 高级系统设置 - 环境变量
- 添加JAVA_HOME变量,变量值为jdk安装路径(bin目录的上一级) img_3.png
- 编辑path变量,添加%JAVA_HOME%\bin
- 打开cmd,输入java -version,出现以下信息,说明配置成功
4.Java执行流程分析
.java文件通过 javac命令 编译成.class文件,.class文件通过java命令执行。
5.java开发注意事项
- java源文件以.java为扩展名。源文件的基本组成部分是类(class)
- java程序的执行入口是main()方法。main()方法也是一个普通的静态方法。它有固定的额书写格式:
java
public static void main(String[] args){
....
}
- java语言严格区分大小写
- java方法由一条条语句构成,每个语句以分号(;)结束
- 大括号是成对出现的缺一不可 [习惯上先写{}再写代码]
- 一个源文件中最多只能有一个public类。其它类的个数不限
- 如果源文件包含一个public类,则文件名必须按该类名命名
- 一个源文件中最多只能有一个public类。其它类的个数不限,也可以将main方法写在非public类中,然后指定运行非public 类,这样入口方法就是非public的main方法
6.java常用转义字符
转义字符 | 描述 |
---|---|
\n | 换行符 |
\t | 制表符 |
\r | 回车符 |
\b | 退格符 |
\f | 换页符 |
\' | 单引号 |
\" | 双引号 |
" | 一个" |
' | 一个' |
\ | 一个\ |
java
public class test
{
public static void main(String[] args){
System.out.println("书名\t作者\t价格\t销量\t\n三国\t罗贯中\t100\t10000");
}
}
7.注释之文档注释
注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件形式体现的该程序的说明文档。
常用javadoc标签
标签 | 描述 | 示例 |
---|---|---|
@author | 作者 | @author jack |
@deprecated | 指名一个过期的类或成员 | @deprecated description |
@docRoot | 指明当前文档根目录的路径 | Directory Path |
@exception | 标志一个类抛出的异常 | @exception exception-name explanation |
@inheritDoc | 从直接父类继承的注释 | Inherits a comment from the immediate surperclass. |
@link | 插入一个到另一个主题的链接 | |
@linkplain | 插入一个到另一个主题的链接,但是该链接显示纯文本字体 | Inserts an in-line link to another topic. |
@param | 描述一个方法的一个参数 | @param parameter-name explanation |
@return | 描述返回值类型 | @return explanation |
@see | 指定一个到另一个主题的链接 | @see reference |
@serial | 描述一个序列化属性 | @serial description |
@serialData | 描述通过writeObject( )和writeExternal( )方法写的数据 | @serialData description |
@serialField | 描述一个ObjectStreamField组件 | @serialField name type description |
@since | 标记当引入一个特定的变化时 | @since release |
@throws | 描述一个方法可能抛出的异常 | @throws exception-name explanation |
@version | 标记当引入一个特定的变化时 | @version information |
@value | 显示常量的值,该常量必须是static属性。 | Displays the value of a constant, which must be a static field. |
java
/**
@author jack
@version 1.0
*/
public class test
{
public static void main(String[] args){
System.out.println("书名\t作者\t价格\t销量\t\n三国\t罗贯中\t100\t10000");
}
}
执行命令
javadoc -d doc -encoding utf-8 -charset utf-8 -author -version test.java
8.java代码规范
- 类方法的注释,要以javadoc的方式来写
- 非javadoc的注释,往往是给代码的维护者看的,着重告诉读者为什么这样写,如何修改,注意什么问题等
- 使用tab操作实现缩进,默认整体向右边移动,使用shift + tab 整体向左移
- 运算符和 = 两边习惯性加一个空格。比如 2 + 4 * 5 + 345 - 89
- 源文件使用utf-8编码
- 行宽度不要超过80字符
- 代码编写使用次行风格和行尾风格
9.DOS命令
Dos:DiskOperatingSystem磁盘操作系统,简单说一下windows的目录结构。[原理图]
- 查看当前目录是有什么内容 dir dir d:\abc2\test200
- 切换到其他盘下:盘符号 cd : change directory 案例演示:切换到 c 盘 cd /D c:
- 切换到当前盘的其他目录下 (使用相对路径和绝对路径演示), ..\表示上一级目录 案例演示: cd d:\abc2\test200 cd ....\abc2\test200
- 切换到上一级: 案例演示: cd ..
- 切换到根目录:cd
案例演示:cd \ - 查看指定的目录下所有的子级目录 tree
- 清屏 cls [苍老师]
- 退出 DOS exit
- 下面的几个指令了解即可 (md[创建目录],rd[删除目录],copy[拷贝文件],del[删除文件],echo[输入内容到文件],type,move[剪切]) => Linux
10.相对路径与绝对路径
相对路径: 从当前目录开始定位,形成一个路径 绝对路径: 从顶级目录d开始定位,形成的路径 需求: 从abc\test100访问hello.txt 相对路径: ....\abc2\test200\hello.txt 绝对路径: d:\abc2\test200\hello.txt