Java基础知识和环境搭建
一、Java的历史
-
Java的诞生
1995年5月23日 Sun公司 詹姆斯·高斯林 Java 1.0版本
-
Java的三个方向
1998年 Java分三个方向 J2SE J2ME J2EE Java 1.2版本
2005年 Java方向更名 JavaSE JavaME JavaEE
2019年 JavaEE更名为JakartaEE
-
Sun公司被收购
2009年 Sun被Oracle公司收购,Java归属Oracle
-
JavaEE被捐献给Apache基金会
2018年 JavaEE被捐献给Eclipse基金会,同时更名为JakartaEE
二、Java的特点
- 适用性强 具有丰富的编程资源
- 跨平台性 可以在不同的操作系统上运行
- 开源性
三、运行机制
-
编译型语言:源代码–>编译器–>机器码–>运行,运行效率高但不可跨平台
-
解释型语言:源代码–>解释器–>解释运行,可以跨平台但是运行效率低
-
Java:先编译后解释运行
对源文件先编译,再解释运行
a.流程
源文件(.java文件)–>编译器–>字节码文件(.class文件)–>解释器–>解释运行
b.优点
跨平台,运行效率高
c.一次编译,多次运行
write once,run anywhere
四、环境搭建
-
名词解释
- JVM: Java虚拟机,用于屏蔽不同操作系统间的差异
- JRE: Java运行时环境,主要由虚拟机和解释器组成
- JDK: Java开发工具包,主要有JRE、类库和一些工具组成
-
环境变量
- path: 使用JDK安装的bin目录(也可以使用%java_home%引用java_home的地址)
- java_home: 指向JDK安装的的根目录
- classpath: 配置一个点,即“.“
-
安装验证
- 打开控制台(在“开始”,输入cmd;或者使用win+R快捷键,输入cmd)
- 输入java和javac,可以看到提示的命令列表,就表示安装成功
- 使用java -version 可以查看当前使用的JDK版本号
五、第一个Java程序
class HelloWorld{
public static void main(String[] args){
System.out.println("HelloWorld");
}
}
-
源文件:创建一个文本文档,将拓展名改为.java
-
class:类,代码的容器,大多数代码都要写在类以内
-
main函数:程序的入口函数,代表代码从这里开始运行,一个class中只能声明一个main函数
-
打印语句:
- System.out.println(); 在控制台输出,结束后换行
- System.out.print(); 在控制台输出,结束后不换行
-
编译:javac 源文件名.java
-
运行:java 类名
**注意:**运行的时候不要加上“.class”后缀
-
一个源文件中可以声明多个类,每个类中都可以定义一个main函数。但是同一个类中只能声明一个main函数
-
如果一个源文件中定义了多个类,当对该源文件编译之后,每个类都会生成一个字节码文件(.class文件),文件名与类名完全一致
-
公开类:
- 如果一个类的声明为public class,那么这个类被称为公开类
- 公开类的类名要求与源文件名完全一致
- 一个源文件中只能声明一个公开类,但是普通类的数量不限(源文件名只有一个,而类名不能相同,所以只能声明一个公开类)
六、package语句
-
作用:类似文件夹的功能,对字节码文件进行分门别类的管理
-
语法:
- package 包名;
- package必须声明在源文件的第一行有效语句
- 一个源文件中只能定义一个package语句(原因参考上一条)
- 如果打包具有层级关系,层级之间使用"."分隔
-
带包编译:javac -d . 源文件名.java
- 命令中的-d 表示生成目录结构
- 命令中的"."表示生成的目录放置的位置
- 命令解释:编译源文件,需要生成目录结构,目录放置在当前位置
-
带包运行:java 完整的包名.类名
注意:当声明过package语句之后,这个类在使用的时候就需要加上包名,即"完整包名.类名"的方式使用(完整包名.类名的形式又称为全限定名)
package p1.p2.p3;
class HelloWorld{
public static void main(String[] args){
System.out.println("HelloWorld");
}
}
七、标识符的命名规范
-
语法要求
- 标识符使用字符、数字、下划线("_")、美元符号("$")组成,数字不能作为开头
- 标识符中严格区分大小写,但没有长度限制
- 不能使用关键字,保留字(goto和const)和特殊字符(true、null等)
-
约定俗成
- 包名全小写,公司域名的倒置写法
- 类名使用大驼峰命名,即首字母大写,之后每个单词的首字母也大写
- 常量名全大写
- 其他名使用小驼峰,即首字母小写,之后每个单词的首字母大写
八、编码规范
-
格式规范
- 层级间缩进,一个Tab键或者四个空格的间隔
- 大括号的起点在结尾,而不是单独一行
- 每一行只写一句代码
-
命名规范
- 遵守标识符的命名规则
- 命名做到望文生义,不使用中文和拼音
- 命名时尽量少使用缩写
九、注释
-
注释的作用:对代码加以说明,提高代码的可读性
-
注释的特点:注释是无效语句,不参与编译,不会影响代码效率。
-
注释的分类:
-
单行注释:使用"// XXX"的形式,只能在本行写入注释内容
-
多行注释:使用"/“开头并且以”/"结尾,中间的所有内容都会当做注释,多行注释中可以嵌套单行注释
-
文档注释(javadoc注释):使用"/**“开头并且以”*/"结尾
使用javadoc -d . 源文件名.java 的命令生成文档
通常写在类和函数上面对类或者函数的功能做说明
使用文档注释生成的文档叫做API文档
-
package p1.p2.p3;
/**
我是一段javadoc注释
我可以换行
*/
class HelloWorld{
/*
我是一段多行注释
我可以换行
//我也支持单行注释的嵌套
*/
public static void main(String[] args){
//我是一段单行注释
//我不可以换行
System.out.println("HelloWorld");
}
}
只为服务大家、充实自己。如有侵权,请及时联系。谢谢!!!