Java学习过程02

学习的第二天

标识符

什么是标识符

就是程序员在定义java程序时,自定义的一些名字,例如helloworld 程序里关键字class 后跟的Test,就是我们定义的类名。类名就属于标识符的一种。
标识符除了应用在类名上,还可以用在变量、函数名、包名上。

标识符必须遵循以下规则

  1. 标识符由26个英文字符大小写(a-z、A-Z)、数字(0~9)、下划线(_)和美元符号($)组成。
  2. 不能以数字开头,不能是关键字
  3. 严格区分大小写
  4. 标识符可以为任意长度

非法标识符

  1. class (关键字)
  2. 100java(不能以数字开头)
  3. Hello java (空格不是组成标识符的元素)

java中的标识符命名规范

1、区分大小写
2、见名知意
3、类名: class +类名 : 首字母大写 如: HelloWorld
方法名:方法名() : 驼峰规则 ,首字母小写+第二个起每个单词首字母大写 如 helloWorld
变量名:变量的类型 变量名 ;与方法名同理
常量名:final 类型 常量名 ; 每个字母大写, _分割单词

关键字

Java学习过程02
不必死记硬背

注解

单行注解

// :编译器会忽略该行//后的文本

多行注解

/。。。/ :编译器看到/时会搜索接下来的/,忽略掉/* */之间的文本

文档注解

/** */:是java特有的注释,其中注释内容可以被JDK提供的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档。

编程习惯:

  1. 给那条语句进行说明,注释应该写在该语句的旁边。

  2. 单行注释一般写在语句的后面
    多行注释和文档注释一般写在语句的上面
    注意:文档注释只能出现在类、属性、方法的上面。

常量

常量分为整数常量、小数常量、布尔常量、字符常量、字符串常量、null常量。

转移字符

\r 表示接受键盘输入,相当于按下回车。
\n 表示换行。
\t 制表符,相当于Table键
\b 退格键,相当于Back Space
\’ 单引号
\” 双引号
\\ 表示一个斜杠

进制转换

二进制 由0,1组成。以0b开头。
八进制 由0,1,…7组成。以0开头。
十进制 由0,1,…9组成。整数默认是十进制。
十六进制 由0,1,…9,a,b,c,d,e,f(大小写均可)组成。以0x/0X开头。

变量

分为基本数据类型:4类8种(只占用一块内存)
引用数据类型:类,接口,数组。(占用两块内存)
一般基本类型和引用类型地址放在栈空间、引用类型内容放在堆空间

基本数据类型

1B(byte,字节)= 8 bit(位);
1KB(Kibibyte,千字节)=1024B= 2^10 B;
1MB(Mebibyte,兆字节,百万字节,简称“兆”)=1024KB= 2^20 B;
1GB(Gigabyte,吉字节,十亿字节,又称“千兆”)=1024MB= 2^30 B;

整型

byte(字节型)占一个字节,范围为(-128,127)
short(短整型)占二个字节,范围为(-32768,32767)
int(整型)占四个字节,范围为(-21亿,21亿)
long(长整型)占八个字节,范围为(±9223372036854775807)
注意:整数数值默认为int类型,如果需要定义一个long类型的变量,当超出int的范围时,需要在该值后加 l或者L

浮点型

float(单精度)占四个字节,默认保留八位数
double(双精度)占八个字节,默认保留十七位数字
注意:浮点数默认为double类型,如果需要定义一个float类型的变量,则数值后需要加 f或者F,浮点型会丢失精准

字符型

char(字符型)占两个字节。只能储存一个字符或一个汉字
要求:用’ '将字符括起来,最多储存一个字符

逻辑型

boolean(布尔类型)占八分之一个字节

引用数据类型

变量声明与初始化

初始化方式1: 数据类型 变量名字 = 数值。
初始化方式2: 数据类型 变量名字 ;
变量名字 = 数值。
第一种直接声明加初始化,第二种先声明,再初始化
案例:
方式1: double d = 3.14;
方式2: double d ; d = 3.14 ;

数据类型的转换

自动类型转换(隐式类型转换)

从小到大
byte b = 1;
short s = b;
int i = s;
long lon = i;
double d = lon; //输出1.0

强制类型转换(显式类型转换)

强制转换为自己想要的数据类型
byte b=126;
b=b+3;
System.out.println(b);
输出为int类型的数据,强制转换的话为
byte b=126;
b=(byte)(b+3);
System.out.println(b);
此时由于强制转换了,但byte范围为(-128,127),结果溢出,所以会重新开始加。
输出-127