Java基础(一):Java基础语法
一、开发前言
1.1 Java语言发展史
Java语言是美国sun公司(Stanford University Netork),在1995年推出的高级编程语言。
1.2 计算机基础知识-二进制
计算机中的数据不同于人们生活中的数据,人们生活中采用十进制数。而计算机中全部采用二进制数表示,它只包含0、1两个数,逢二进一,1+1=10。每一个0或者1叫做一个bit(比特,位)
-
十进制转为二进制
-
二进制转为十进制
1.3 计算机存储单元-字节Byte
位(bit):一个数字0或者1,代表一位。
字节(Byte):是数据存储的最小单位,1Byte = 8bit
1 KB = 1024 Byte
1 MB = 1024 KB
1 GB = 1024 MB
... TB、PB、EB、ZB
1.4 命令提示符cmd
默认打开个人启动:win+R打开运行窗口,输入cmd回车打开cmd窗口。
在当前文件目录下启动:按住shift键,右键选择在此处打开cmd窗口
1.5 cmd常用命令
命令 | 格式 | 举例 |
---|---|---|
切换盘符 | 盘符名称: | D: |
打开文件夹 | cd 文件夹名称\子文件夹 | cd java\md |
返回上级 | cd.. | cd.. |
返回根目录 | cd \ | cd \ |
显示该目录下的所有目录(directory) | dir | dir |
清屏(clear screen) | cls | cls |
推出 | exit | exit |
二、Java语言开发环境搭建
2.1 Java虚拟机-JVM
-
JVM(Java virtual machine):Java虚拟机,简称JVM,是运行所有Java程序的假想计算机,是Java程序的运行环境,是Java最具吸引力的特性之一。我们编写的Java代码,都运行在JVM之上。
-
跨平台:任何软件的运行,都必须要运行在操作系统之上,而我们用Java编写的软件可以运行在任何操作系统上,这个特性称为Java语言的跨平台特性。该特性是由JVM实现的。我们编写的程序运行在JVM上,而JVM运行在操作系统上。
如图所示,Java的虚拟机本身不具备跨平台功能,每个操作系统下都有不同版本的虚拟机。
2.2 JRE和JDK
-
JRE(Java runtime environment):是Java程序的运行时环境,包含JVM和运行时所需要的
核心类库
。 -
JDK(Java development kit):是Java程序开发工具包,包含JRE和开发人员使用的工具。
我们想运行一个已有的Java程序,只需安装JRE即可。
我们想开发一个全新的Java程序,必须安装JDK。
2.3 JDK的下载与安装
官网下载 Java SE Development Kit
文件夹名称不要空格不要英文:D:\install\java\jdk1.8.0_221
2.4 环境变量的配置
-
新建系统变量
-
变量名称:JAVA_HOME 值:D:\install\java\jdk1.8.0_221
-
-
编辑系统变量path
-
最前方添加:%JAVA_HOME\bin%;
-
三、HelloWorld案例
3.1 程序开发步骤说明
Java程序开发三步骤:编写、编译、运行
3.2 编写Java源程序
-
在D盘新建一个HelloWorld.java文件,源代码程序后缀必须为.java
//第一行:public class 后面代表定义一个类的名称,类是Java中所有源代码的基本组织的单位 public class HelloWorld{ //第二行:是程序的主方法,是程序执行的起点,一个Java文件中只能有一个主方法 public static void main(String[] args){ //第三行:换行打印输出语句 System.out.println("Hello World!"); } }
3.3 编译运行
-
在D盘按住shift键,鼠标右键点击打开CMD命令窗口
-
输入编译命令:
javac HelloWorld.java
,此时将生成HelloWorld.class的Java字节码文件 -
运行:
java HelloWorld
,此处指的是HelloWorld.class -
cmd将打印Hello World!
-
重新编译后,需要再次输入编译命令重新生成Java字节码文件,运行后才能输出重新编译后的内容
3.4 程序注释和HelloWorld说明
//单行注释 CTRL+/ /* 多行注释 CTRL+shift+/ */
四、关键字&标识符
4.1 关键字keywords
-
程序编写命名不能与关键字相同
4.2 标识符
-
标识符:是指在程序中,我们自己定义内容。比如类/方法/变量的名字等都是标识符。
-
HelloWorld中 出现的标识符有类的名字
HelloWorld
-
-
命名规则:
-
可以包含
英文字母(区分大小写)
、数字
、$(美元符号)
和_(下划线)
-
不能以数字开头
-
不能是关键字
-
-
命名规范:
-
类名:首字母大写,后面每个单词首字母大写(大驼峰式)、HelloWorld
-
变量名:首字母小写,后面每个单词首字母大写(小驼峰式)、singleFlag
-
方法名:同变量名
-
五、常量&变量
5.1 常量const
在程序运行期间,固定不变的量
-
分类:
-
整数常量:直接写上的数字,没有小数点。例如:123、0、-9...
-
浮点数常量:直接写上的数字,有小数点。例如:2.6、0.0、-3.14...
-
字符常量:凡是单引号引起来的部分
**(单引号内有且仅有一个字符,不能为空)**
。例如:’A‘、’0‘、’中‘... -
字符串常量:凡是双引号引起来的部分
(双引号内可以有一个或多个字符,可以为空)
。例如:“hello“、""、”A“、”123“... -
布尔常量:只有两种取值。true、false。
-
空常量:null,代表没有任何数据
-
-
常量的打印输出:
-
System.out.println("Hello World!");
//空常量不能打印输出
-
5.2 数据类型
-
基本数据类型:包括
整数
、浮点数
、字符
、布尔
。 -
引用数据类型:包括
字符串
、数组
、类
、接口
、lambda
。
数据类型 | 关键字 | 内存占用 | 取值范围 |
---|---|---|---|
字节型 | byte | 1个字节 | -128 ~ 127 |
短整型 | short | 2个字节 | -32768 ~ 32767 |
整型 | int(默认) | 4个字节 | -231 ~ 231-1 |
长整型 | long | 8个字节 | -263 ~ 263-1 |
单精度浮点数 | float | 4个字节 | 1.4013E-45 ~ 3.4028E+38 |
双精度浮点数 | double(默认) | 8个字节 | 4.9E-324 ~ 1.7977E+308 |
字符型 | char | 2个字节 | 0 ~ 65535 |
布尔型 | boolean | 1个字节 | true,false |
此处E指的是科学计数法:3.4028E+38指的是3.4028×1038
-
注意事项:
-
字符串是引用类型
-
浮点型可能只是一个近似值,并非精确的值
-
数据范围与字节数不一定相关,例如float数据范围比long更加广泛,但是float是4个字节,long是8字节
-
浮点数当中默认类型是double,如果一定要使用float类型,需要加上一个后缀F
-
5.3 变量
变量:程序运行期间,内容可以发生改变的量。
-
创建一个变量:
-
数据类型 变量名称 = 数据值;
-
数据类型 变量名称; 变量名称 = 数据值;
-
-
变量的注意事项
-
变量之间的名称不可以重复
-
对于float和long类型来说,字母后缀F和L不要丢掉
-
右侧数值的范围不能超过左侧数据类型的取值范围
-
没有进行赋值的变量,不能直接使用(打印输出、作为判断值);一定要赋值之后才能使用。
-
变量的使用不能超过变量域
-
变量域:从定义变量的一行开始,到直属的大括号结束为止。
-
-
可以通过一个语句创建多个变量,但是一般不推荐这么写。
-
int a,b,c; a=1;b=2;c=3;
-
int a=1,b=2,c=3;
-
-