这是JavaSE基础的起始篇,从这一篇开始,我将会重新学习一遍Java的基础,毕竟基础打牢固了,以后学习高深一点的东西会比较快掌握,并且虽然以前也学过,不过都没有记笔记,这里主要是把JavaSE的基础笔记全部记一下,方便以后复习和查看,以及加深对java的理解和掌握。
一、开始之前
1.1 Java 语言概述
1.1.1 什么是Java语言
Java语言是美国Sun公司(Stanford University Network),在1995年推出的高级的编程语言。所谓编程语言,是计算机的语言,人们可以使用编程语言对计算机下达命令,让计算机完成人们需要的功能。
1.1.2 Java语言发展历史
1995 年Sun公司发布Java1.0版本1997 年发布Java 1.1版本1998 年发布Java 1.2版本2000 年发布Java 1.3版本2002 年发布Java 1.4版本2004 年发布Java 1.5版本2006 年发布Java 1.6版本2009 年Oracle甲骨文公司收购Sun公司,并于2011发布Java 1.7版本2014 年发布Java 1.8版本2017 年发布Java 9.0版本
1.1.3 Java语言能做什么
Java语言主要应用在互联网程序的开发领域。常见的互联网程序比如天猫、京东、物流系统、网银系统等,以及服务器后台处理大数据的存储、查询、数据挖掘等也有很多应用。
1.2 计算机基础知识
1.2.1二进制
计算机中的数据不同于人们生活中的数据,人们生活采用十进制数,而计算机中全部采用二进制数表示,它只包含0、1两个数,逢二进一,1+1=10。每一个0或者每一个1,叫做一个bit(比特)。
下面了解一下十进制和二进制数据之间的转换计算。
十进制数据转成二进制数据: 使用除以2获取余数的方式
比如写出十进制6的二进制表示方法?
1、6除2等于3余0
2、3除2等于1余1
3、最后剩下1 不需要除
那么二级制的表示就是110
二进制数据转成十进制数据: 使用8421编码的方式
比如二进制数据1001011
计算1上的值加起来,从右边开始,最右边的2的0次方。
1 0 0 1 0 1 1
64 32 16 8 4 2 1
十进制值为64+8+2+1=75
二进制数系统中,每个0或1就是一个位,叫做bit(比特)。
1.2.2 字节
字节是我们常见的计算机中最小存储单元。计算机存储任何的数据,都是以字节的形式存储,右键点击文件属性,我们可以查看文件的字节大小。
8个bit(二进制位) 00000000表示为1个字节,写成1 byte或者1 B。
8 bit = 1 B1024 B =1 KB1024 KB =1 MB1024 MB =1 GB1024 GB = 1 TB
1.2.3 常用DOS命令
Java语言的初学者,学习一些DOS命令,会非常有帮助。DOS是一个早期的操作系统,现在已经被Windows系统取代,对于我们开发人员,目前需要在DOS中完成一些事情,因此就需要掌握一些必要的命令。
进入 DOS操作窗口
按下 Windows+R键盘,打开运行窗口,输入cmd回车,进入到DOS的操作窗口。
打开 DOS命令行后,看到一个路径 c:\user 就表示我们现在操作的磁盘是c盘。
常用命令
| 命令 | 操作符号 |
|---|---|
| 盘符切换命令 | 盘符名 : |
| 查看当前文件夹 | dir |
| 进入文件夹命令 | cd 文件夹名 |
| 退出文件夹命令 | cd.. |
| 退出到磁盘根目录 | cd\ |
| 清屏 | cls |
二、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 。
三者关系: JDK > JRE > JVM
2.3 JDK9 安装图解





安装路径中,不要包含中文和空格。
2.4 JAVA_HOME 环境变量的配置
这个参考我如下两篇博文即可:
window Java环境变量配置
linux中java环境变量配置
三、HelloWorld入门程序
3.1 程序开发步骤说明
开发环境已经搭建完毕,可以开发我们第一个Java程序了。
Java程序开发三步骤:编写、编译、运行。
3.2 编写Java源程序
- 在D:\Work\HelloWorld目录下新建文本文件,完整的文件名修改为HelloWorld.java ,其中文件名为 HelloWorld ,后缀名必须为 .java 。
- 使用notepad++记事本软件打开输入如下代码。
public class HelloWorld {public static void main(String[] args) {System.out.println("Hello World!");}}
文件名必须是 HelloWorld ,保证文件名和类的名字是一致的,注意大小写。
第一个 HelloWord 源程序就编写完成了,但是这个文件是程序员编写的,JVM是看不懂的,也就不能运行,因此我们必须将编写好的 Java 源文件 编译成JVM可以看懂的 字节码文件 。
3.3 编译Java源文件
在DOS命令行中,进入Java源文件的目录,使用 javac 命令进行编译。javac Java源文件名.后缀名
例如:
javac HelloWorld.java

编译成功后,命令行没有任何提示。打开 D:\Work\HelloWorld目录,发现产生了一个新的文件 HelloWorld.class ,该文件就是编译后的文件,是Java的可运行文件,称为字节码文件,有了字节码文件,就可以运行程序了。
Java源文件的编译工具 javac.exe ,在JDK安装目录的bin目录下。但是由于配置了环境变量,可以在任意目录下使用。
3.4 运行Java程序
在DOS命令行中,进入Java源文件的目录,使用 java 命令进行运行。
命令:java 类名字
举例:java HelloWorld
Java程序 .class 文件 的运行工具 java.exe ,在JDK安装目录的bin目录下。但是由于配置了环境变量,可以在任意目录下使用。
3.5 入门程序说明
3.5.1编译和运行是两回事
编译 :是指将我们编写的Java源文件翻译成JVM认识的class文件,在这个过程中, javac 编译器会检查我们所写的程序是否有错误,有错误就会提示出来,如果没有错误就会编译成功。
运行 :是指将 class 文件 交给JVM去运行,此时JVM就会去执行我们编写的程序了。
3.5.2关于main方法
main 方法:称为主方法。写法是固定格式不可以更改。main方法是程序的入口点或起始点,无论我们编写多少程序,JVM在运行的时候,都会从main方法这里开始执行。
3.6 添加注释comment
注释 :就是对代码的解释和说明。其目的是让人们能够更加轻松地了解代码。为代码添加注释,是十分必须要的,它不影响程序的编译和运行。
Java 中有单行注释和多行注释:
单行注释以 // 开头 换行结束多行注释以 /* 开头 以*/结束
3.7 关键字keywords
关键字 :是指在程序中,Java已经定义好的单词,具有特殊含义。
HelloWorld 案例中,出现的关键字有 public 、 class 、 static 、 void 等,这些单词已经被Java定义好,全部都是小写字母,notepad++中颜色特殊。关键字比较多,不能死记硬背,学到哪里记到哪里即可。
3.8 标识符
标识符 :是指在程序中,我们自己定义内容。比如类的名字、方法的名字和变量的名字等等,都是标识符。
HelloWorld 案例中,出现的标识符有类名字 HelloWorld 。
命名规则: 硬性要求
标识符可以包含 英文字母 26个(区分大小写) 、 0 -9数字 、 $ (美元符号) 和 _ (下划线) 。标识符不能以数字开头。标识符不能是关键字。
命名规范: 软性建议
类名规范:首字母大写,后面每个单词首字母大写(大驼峰式)。方法名规范: 首字母小写,后面每个单词首字母大写(小驼峰式)。变量名规范:跟方法名规范一样, 首字母小写,后面每个单词首字母大写(小驼峰式)。
四、常量
4.1 概述
常量:是指在Java程序中固定不变的数据。
4.2 分类
| 类型 | 含义 | 数据举例 |
|---|---|---|
| 整数常量 | 所有的整数 | 0,1, 567, -9 |
| 小数常量 | 所有的小数 | 0.0, -0.1, 2.55 |
| 字符常量 | 单引号引起来,只能写一个字符,必须有内容 | ‘a’ , ‘ ‘, ‘好’ |
| 字符串常量 | 双引号引起来,可以写多个字符,也可以不写 | “A” ,”Hello” ,”你好” ,”” |
| 布尔常量 | 只有两个值(流程控制中讲解) | true , false |
| 空常量 | 只有一个值(引用数据类型中讲解) | null |
4.3 练习
需求:输出各种类型的常量。
public class ConstantDemo {public static void main(String[] args){//输出整数常量System.out.println(123);//输出小数常量System.out.println(0.125);//输出字符常量System.out.println('A');//输出布尔常量System.out.println(true);//输出字符串常量System.out.println("你好Java");}}
五、 变量和数据类型
5.1 变量概述
变量:常量是固定不变的数据,那么在程序中可以变化的量称为变量。
数学中,可以使用字母代替数字运算,例如 x=1+5 或者 6=x+5。程序中,可以使用字母保存数字的方式进行运算,提高计算能力,可以解决更多的问题。比如x保存5,x也可以保存6,这样x保存的数据是可以改变的,也就是我们所讲解的变量。Java中要求一个变量每次只能保存一个数据,必须要明确保存的数据类型。
5.2 数据类型
数据类型分类
Java的数据类型分为两大类:
基本数据类型 :包括 整数 、 浮点数 、 字符 、 布尔 。引用数据类型 :包括 类 、 数组 、 接口 。
基本数据类型
四类八种基本数据类型:
| 数据类型 | 关键字 | 内存占用 | 取值范围 |
|---|---|---|---|
| 字节型 | byte | 1个字节 | -128~127 |
| 短整型 | short | 2个字节 | -32768~32767 |
| 整型 | int(默认) | 4个字节 | -231次方~2的31次方-1 |
| 长整型 | long | 8个字节 | -2的63次方~2的63次方-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 |
Java中的默认类型:整数类型是 int 、浮点类型是 double 。
5.3 变量的定义
变量定义的格式包括三个要素: 数据类型 、 变量名 、 数据值 。
格式:数据类型 变量名 = 数据值;
练习:
定义所有基本数据类型的变量,代码如下:
public class Variable {public static void main(String[] args){//定义字节型变量byte b = 100;System.out.println(b);//定义短整型变量short s = 1000;System.out.println(s);//定义整型变量int i = 123456;System.out.println(i);//定义长整型变量long l = 12345678900L;System.out.println(l);//定义单精度浮点型变量float f = 5.5F;System.out.println(f);//定义双精度浮点型变量double d = 8.5;System.out.println(d);//定义布尔型变量boolean bool = false;System.out.println(bool);//定义字符型变量char c = 'A';System.out.println(c);}}
long类型:建议数据后加L表示。
float类型:建议数据后加F表示。
5.4 注意事项
变量名称:在同一个大括号范围内,变量的名字不可以相同。
变量赋值:定义的变量,不赋值不能使用。
总结
嗯超级基础的,有时间就做下笔记即可。
