一、JDK、JRE、JVM的关系(重要)
二、关于Java历史的几个小点
-
诞生于SUN
-
现在属于Oracle
-
我们学习的是JDK17,或Java17
-
Java之父:詹姆斯.高斯林
-
Java大约1995诞生,大约28岁左右
三、Java程序的开发步骤
第一步:编写源代码
工具:可以是普通的记事本文件,可以是更好用一点的文本编辑器notepad++,或者更智能的集成开发工具IDEA。
public class HelloWorld{ public static void main(String[] args){ System.out.println("hello java"); } }
代码结构:
类{ 方法{ 语句; } }
因为Java是面向对象的编程语言,所以Java代码的结构是类-->方法->语句;
保存文件必须是.java结尾,.java结尾就是Java源文件的扩展名,后缀名的要求。
第二步:编译源文件,生成字节码文件
工具:javac.exe
使用的命令:
javac 源文件名.java
第三步:运行主类
工具:java.exe
使用命令:
java 主类名
主类:包含main方法的类
main方法是Java程序的入口。main方法的完整格式:
public static void main(String[] args){ }
-
():圆括号,小括号
-
[]:方括号,中括号
-
{}:花括号,大括号
System.out.println("hello java"); //这是一个语句,一条输出语句,在控制台输出hello java
四、可能出现的问题
问题1:主类名与源文件名不一致问题
说明:
-
当主类是public修饰的,那么主类名必须与源文件名一样。(推荐)
-
当主类不是public修饰的,那么主类名可以与源文件名不一样。
问题2:编码不一致问题导致乱码
解决办法:
-
方式一:编译的时候,告诉Java编译器,你代码用的是什么编码方式
-
方式二:统一编码方式
问题3:大小写问题
首先:Java代码中一定严格区分大小写。
其次:windows操作系统,对文件名不区分大小写。
最后:java命令后面是主类名,它也是Java代码的一部分,也区分大小写。
建议:无论是文件名还是代码、类名等,都严格区分大小写。
五、Java的语法基础
5.1 Java的注释(重要)
注释:对代码进行解释说明的文字,给自己或团队中其他程序员看,即给人的。
Java的注释有3种,今天先掌握2种,第3种后面在讲。
-
单行注释://注释内容
-
多行注释:/* 注释内容 */
-
文档注释:/** 文档注释内容 */
/* 多行注释 这个类是用于演示Java注释的使用 包含main方法的类是主类 运行Java程序的命令格式:java 主类名 */ public class CommentDemo{ //单行注释:main方法是Java程序的入口,必须有main方法才能运行 public static void main(String[] args){ } }
5.2 Java的关键字(不用今天都记下来,但是要可以关注)
上述代码全部都是小写。
关键字:在Java语法中它有特殊的意义。
例如:public:代表的是公共的,class:代表的是一个Java类。
其中有3个保留字:goto,const,_
保留字:是说Java还未使用它,预留的关键字。
已经废弃的关键字:strictfp。(早期因为Java要跨平台,小数类型在不同平台表示方式不同,为了统一,加这个关键字)。
另外,有3个单词非常特殊,它们在官方文档中没有归到关键字,称为特殊值。它们是true(真的,成立的),false(假的,不成立),null(空的)。
5.3 标识符(能记住就记,记不住,就查询笔记)
标识符:给Java的类、方法、变量等取名字的单词就是标识符。
标识符有严格的命名规则:必须遵守,不遵守会有问题
-
Java的标识符只能是26个英文字母(大小写共52个),数字(0-9),下划线(_),美元符号($)
-
咱们自己命名,尽量不要用美元符号
-
-
Java的标识符不要用数字开头
-
Java的标识符中间不要包括空格
-
Java的标识符不能直接使用关键字
-
Java的标识符也是严格区分大小写
标识符的命名规范:建议大家遵守,不遵守会被鄙视或开除。
-
尽量见名知意,如果英语不好用翻译工具辅助。
-
类名:每一个单词首字母大写,遵循大驼峰命名法,形式:XxxYyyZzz
-
变量名:从第二个单词开始,首字母大写,遵循小驼峰命名法,形式:xxxYyyZzz
-
常量名:每一个单词每一个字母都大写,单词之间使用下划线分割,形式:XXX_YYY_ZZZ
-
包名:每一个单词每一个字母都小写,单词之间使用.分割,形式:xxx.yyy.zzz
对于有更高要求同学,建议看看阿里开发规范。
六、Java的变量
6.1 变量的作用
变量是用来存储数据的。
public class VariableDemo{//Variable变量,Demo演示案例 public static void main(String[] args){ //想要在程序中表示年龄 //int代表年龄是一个整数值,18就是年龄的数据值 int age = 18;//age就是一个变量 System.out.println("年龄:" + age); } }
6.2 变量的声明格式和赋值格式
数据类型 变量名; //声明格式
变量名 = 数据值; //赋值格式
很多时候,会把声明和第一次赋值合并起来:
数据类型 变量名 = 数据值;
6.3 Java的数据类型(今天简单介绍)
Java的数据类型分为两大类:
-
基本数据类型(共8种):
-
整数类型:byte,short,int,long(越往右边的,可以表示的整数类型越大,至于多大范围明天再说)。long类型的变量,当数字比较大的时候,需要加L或l(小写L)。
-
小数类型:float,double(double类型比float类型可以表示的小数点后的位数多一些,数据范围大一些)。无论是float还是double都是浮点型,即不精确的。float类型的小数要在数字后面加F或f。
-
单字符类型:char,可以存储1位字符,例如:'男'。单字符类型值需要用单引号表示。
-
布尔类型:boolean,只能存储true,false
-
-
引用数据类型(很多)
-
类:代表有String。String类用来表示一串字符。字符串需要用双引号表示。
-
其他类型,后面再说。数组、枚举、注解、接口、记录等
-
6.4 如何输出变量值
System.out.println(变量名); System.out.println("描述文字:" + 变量名); System.out.println("描述文字:" + 变量名1 + ",描述文字:" + 变量名2);
public class VariableDemo2{ public static void main(String[] args){ float f = 1.2F; char gender = '男'; long big = 5555555555555555L; String name = "柴林燕"; System.out.println(f); System.out.println(gender); System.out.println(big); System.out.println(name); System.out.println("============"); System.out.println("f=" + f); System.out.println("gender性别:" + gender); System.out.println("大整数big:"+ big); System.out.println("name=" + name); //这里的+不是求和,是拼接,连接。 System.out.println("name = " + name +",gender = " + gender); } }
6.5 变量有一些要求或特点
-
变量先声明后使用
-
变量在使用之前,必须初始化。(初始化:第一次赋值)
-
变量不能重复声明,但是可以重复赋值
-
变量的使用有严格的作用域
-
变量的数据值必须符合它类型
public class VariableDemo3{ public static void main(String[] args){ //System.out.println(age);//变量还未声明,不能使用 //int age; //System.out.println(age);//变量已经声明了,但是未初始化 { int age = 18; System.out.println(age); //int age = 19;//重复声明 age = 19; //重复赋值 System.out.println(age); //age = 1.5;//数据类型不符合 } //System.out.println(age);//超出作用域 } }