java复习总结
文章目录
1Java语言的发展历史
你只需要知道java非常NB即可。
java是sun公司推出的高级编程语言。
编程语言:人们可以使用编程语言对计算机下达命令,令计算机完成人们需要的功能。
1.2计算机基础知识
计算机采用二进制数表示,只包含0,1两个数,逢二进一,1+1=10,每个0或者1,叫做bit(比特)。
十进制转成二进制:除以2取余
二进制转成十进制:使用8421编码
1.3字节
字节是最常见的计算机最小存储单元
8个bit(二进制位)0000-0000表示一个字节,写成1byte=8B
字符串是utf-8编码,一个汉字三个字节,一个字母一个字节。 字符串是gbk编码时,一个汉字两个字节,一个字母一个字节。
8bit = 1 B
1024 B =1 KB
1024 KB =1 MB
1024 MB =1 GB
1024 GB = 1 TB
常用DOS命令
Windows+R,打开运行窗口,输入cmd回车,进入DOS操作窗口(图片省略)。
1.4常用命令
命令 | 操作符号 |
---|---|
盘符切换 | 盘符名: |
查看当前文件夹 | dir |
进入文件 | cd 文件夹名 |
退出文件夹命令 | …/ |
退出磁盘根目录 | cd\ |
清屏 | cls |
2Java语言开发环境搭建
jvm
java虚拟机 ,是运行所有Java程序的假想计算机,是Java程序的运行环境,是Java最具吸引力的特性之一。
跨平台:也就是在不同操作系统都能运行。任何软件的运行,都必须要运行在操作系统上,Java可以在任意操作系统运行,这个特性称为Java语言的跨平台特性,该特性是由jvm实现的。我们编写的代码在jvm上运行,jvm在操作系统上运行。
JRE和JDK
JRE: Java Runtime Environment
JDK:Java Development Kit
JRE顾名思义是java运行时环境,包含JVM和运行时所需要的核心类库。是使用java语言编写的程序运行所需要的软件环境,是提供给想运行java程序的用户使用的。
JDK顾名思义是java开发工具包,包含JRE和开发人员使用的工具。是程序员使用java语言编写java程序所需的开发工具包,是提供给程序员使用的。JDK包含了JRE,同时还包含了编译java源码的编译器javac,还包含了很多java程序调试和分析的工具:jconsole,jvisualvm等工具软件,还包含了java程序编写所需的文档和demo例子程序。
JDK > JRE > JVM
JDK安装
官网下载,直接下一步即可,安装完成后配置环境变量 JAVA_NOME,此处省略。
Hello World
环境搭建完成,可以开发第一个Java程序了。
编写、编译、运行。
javac.exe:编译器
java.exe:解释器
新建文本文件,修改为HelloWorld.java,文件名HelloWorld,后缀.java。
用记事本打开(notepad++)
输入代码并保持
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello World!");
}
源码编写完成,但是jvm看不懂这个代码,无法运行,因此我们蒋Java源文件编译成jvm能看懂的字节码文件。
也就是.java 到 .class文件的过程
javac Java源文件名.后缀名
//例如:javac HelloWorld.java
进入java源文件目录,执行上述DOS命令,这时,在源文件目录中会产生新的.class文件,该文件就是编译后的Java文件,
执行命令
java 类名称
//例如:java HelloWorld
这个时候就执行了HelloWorld.class中的的main方法,输出“Hello World!”
补充说明:
编译、运行:
编译:将java源文件翻译成JVM认识的class文件,也就是字节码文件,在这个过程中,javac编译器会检查我们所写的程序是否有错误,有错误就会提示出来,没有错误就编译成功。
运行:JVM运行class文件,执行我们编写的程序。
main方法
main方法又称为主方法,写法是固定的不可更改,main方法是程序的入口点或起始点,无论我们编写多少程序,JVM在运行的时候,都会从main方法这里开始执行。
注释
注释就是对代码的解释说明,程序员最讨厌的两件事就是写注释和别人代码中没有注释。
单行注释://开头 换行结束
多行注释:/*开头 */结束
关键字
关键字:指在程序中,Java已经定义好的单词,具有特殊含义
比如:public 、 class 、 static 、 void
等,使用开发工具idea时,会有特殊颜色标识。
标识符
标识符:在程序中,我们自己定义内容,比如类的名字,方法的名字和变量名等等都是标识符。
命名规则:
- 可以包含英文字母(区分大小写),0-9数字,$(美元符号)和_(下划线)
- 不能以数字开头
- 不能时关键字
命名规范:
业界默认命名规范
1、项目名全部小写.
2、包名全部小写.
3、类名首字母大写,其余组成词首字母依次大写.
4、变量名,方法名首字母小写,如果名称由多个单词组成,除首字母外的每个单词的首字母都要大写.
5、常量名全部大写.
以上,Java程序的运行流程基本结束,下面开始java语言的相关内容
常量
常量:指在Java程序中固定不变的数据。
类型 | 含义 | 数据举例 |
---|---|---|
整数常量 | 所有的整数 | 0,1, 567, -9 |
小数常量 | 所有的小数 | 0.0, -0.1, 2.55 |
字符常量 | 单引号引起来,只能写一个字符,必须有内容 | ‘a’ , ’ ', ‘好’ |
字符串常量 | 双引号引起来,可以写多个字符,也可以不写 | “A” ,“Hello” ,“你好” ,"" |
布尔常量 | 只有两个值(流程控制中讲解) | true , false |
空常量 | 只有一个值(引用数据类型中讲解) | null |
变量和数据类型
变量:常量时固定不变的数据,变化的数据称为变量。
Java中要求一个变量每次只能保存一个数据,必须明确保存的数据类型。
数据类型
数据类型分为两大类
基本数据类型:整数,浮点数,字符,布尔。
引用数据类型:类,数组,接口。
面试题:String是值传递还是引用传递?
参考知乎高赞
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。
long类型:建议数据后加L表示。
float类型:建议数据后加F表示。
变量的定义
变量的定义格式包括三个要素:数据类型,变量名,数据值。
格式
数据类型 变量名 = 数据值;
注意事项
变量名称:在同一个大括号内,变量名不可以相同。
变量赋值:定义的变量,不赋值不能使用。
2数据类型转换
自动转换
int i =1;
byte b =2;
运算结果:int类型
- 将取值范围小的类型自动提升为取值范围大的类型。
原理: byte类型内存占有1个字节,在int类型运算时会提升为int类型,自动补充三个字节,因此,计算后的结果还是int类型。
同样道理,当一个 int 类型变量和一个 double 变量运算时, int 类型将会自动提升为 double 类型进行运算。
转换规则
byte、short、char‐‐>int‐‐>long‐‐>float‐‐>double
强制转换
=======未完待续