java基础语言
一.标识符
标识符:在java程序中,有些名字是我们自己定义的,那么这些我们自己定义的名字就叫做自定义的标识符
标识符的命名规则:
1.标识符是由字母(a-z A-Z)、数字、下划线(_)、美元符号($)组成的
2.标识符不能以数字开头
3.标识符是严格区分大小写的
4.标识符是没有长度限制的
5.标识符的命名要有意义,最好是一看到名字就知道它的意思
6.关键字、保留字不能用于自定义的标识符
标识符的命名规范:
1.类名、接口名的每一个单词的首字母大写,其他小写。如:RunTime
2.变量名、方法名的首单词全部小写,其他单词的首字母大写,其他小写。如:readBook
3.包名所有单词全部小写。如:java.lang
4.常量名所有的单词全部大写,如果有多个单词,那么单词与单词之间用下划线分开。如:PI、AGE_OF_PERSON
关键字:就是在java程序中具有特殊含义的标识符,一般用于描述程序的结构和表示的数据类型
保留字:是系统保留起来不允许用户使用的标识符(保留字有const、goto)
二.注释
注释:使用文字对程序的说明,注释是写给程序员看的,让程序员更容易了解程序的内容,编译器会忽略注释的内容
注释的类别:
1.单行注释 //注释的内容
2.多行注释 /*注释的内容*/
3.文档注释 /**注释的内容*/ 文档注释也算是多行注释
注释的作用:
1.使用文字对程序的说明,方便程序员了解程序的内容
2.调试程序
文档注释与多行注释的区别:
多行注释的内容不能生成开发者文档,而文档注释的内容可以生成开发者文档
如何生成开发者文档?
使用javadoc开发工具即可生成开发者文档
使用Javadoc工具的格式:
javadoc -d 存放文档的路径 java的源文件
使用javadoc需要注意的细节:
1.如果一个类需要使用Javadoc工具生成开发者文档,那么这个类必须要用public修饰
2.文档注释的内容一般位于类或者方法的上面
写注释的规范:
单行注释一般位于程序的右侧,多行注释和文档注释一般位于类或方法的上面
三.常量
常量:程序在运行过程中其值不会发生改变的量
常量的类别:
1.整数常量:1、2、3
2.小数常量:1.2、2.3、3.14
3.布尔常量:布尔常量就只有两个值,分别是true、false
4.字符常量:单个字符用单引号引起来的内容。如:'a'、'b'
5.字符串常量:使用双引号引起来的内容。如:"Hello World"
整数常量的表现形式是以不同的进制(二进制、八进制、十六进制....)表现出来的
二进制由0、1组成;八进制由0~7组成;十六进制由0~9、a(10)、b(11)、c(12)、d(13)、e(14)、f(15)组成
十进制与二进制之间的转换:
十进制转换成二进制:十进制的数据不断除以2,直到商为0为止,然后从下往上取余数就是对应的二进制。
例子如下:
二进制转换成十进制:二进制的数据每一位数都乘以2的n次方,n从0开始递增,然后把各部分的数据相加
例子如下:
1110(二进制)--------------------->14(十进制)
1110(十进制)=0*2^0+1*2^1+1*2^2+1*2^3
=0+2+4+8
=14(十进制)
十进制与八进制之间的转换:
十进制转换成八进制:十进制的数据不断除以8,直到商为0为止,然后从下往上取余数就是对应的八进制。
例子如下:
八进制转换成十进制:八进制的数据每一位数都乘以8的n次方,n从0开始递增,然后把各部分的数据相加
例子如下:
55(八进制)--------------------->45(十进制)
55(八进制)=5*8^0+5*8^1
=5+40
=45(十进制)
八进制的数据相当于3个二进制位
例子如下:
55(八进制)--------------------->101101(二进制)
十进制与十六进制之间的转换:
十进制转换成十六进制:十进制的数据不断除以16,直到商为0为止,然后从下往上取余数就是对应的十六进制。
例子如下:
十六进制转换成十进制:十六进制的数据每一位数都乘以16的n次方,n从0开始递增,然后把各部分的数据相加
例子如下:
26(十六进制)--------------------->38(十进制)
26(十六进制)=6*16^0+2*16^1
=6+32
38(十进制)
十六进制的数据相当于4个二进制位
例子如下:
26(十六进制)--------------------->00100110(二进制)
使用进制的数据时,有几点要注意下:
1.如果一个数据没有加上任何标识符时,默认的是十进制的数据
2.如果一个数据要表示成二进制时,要在数据前面加上0b
3.如果一个数据要表示成八进制时,要在数据前面加上0
4.如果一个数据要表示成十六进制时,要在数据前面加上0x
System.out.println(10);//表示的是十进制的数据 输出的结果:10
System.out.println(0b10);//表示的是二进制的数据 输出的结果:2
System.out.println(010);//表示的是八进制的数据 输出的结果:8
System.out.println(0x10);//表示的是十六进制的数据 输出的结果:16
四.变量与数据类型
变量:程序在运行过程中其值会发生改变的量
变量可以理解为一个存储数据的容器,每一个容器都会有他固定的大小、容器里存储的东西以及容器的名字,往往我们人一般放东西(比如放苹果)的时候,都会说把苹果放到多大的篮子当中,java当中也是如此,所以java在声明变量时,其格式大概是 容量 变量名=数据,这里的容量就相当于java当中的数据类型,数据就是上述说的常量,接下来我们来说说java的数据类型
java的数据类型有两种
1.基本数据类型
2.引用数据类型
java的基本数据类型有八种:
1.整数的数据类型:
名称 内存空间 数值范围
byte(字节) 8bit(位) 2^8=256(-128~127)
short(短整型) 16bit(位) 2^16=65536(-32768~32767)
int(整型) 32bit(位) 2^32=4294967296(-2147483648~2147483647)
long(长整型) 64bit(位) 2^64(-9223372036854774808~9223372036854774807)
2.小数的数据类型:
float(单精度浮点型) 32bit(位) 2^32=4294967296(-2147483648~2147483647)
double(双精度浮点型) 64bit(位) 2^64(-9223372036854774808~9223372036854774807)
3.字符的数据类型:
char(字符) 16bit(位) 2^16=65536(-32768~32767)
4.布尔的数据类型:
boolean(布尔) 8bit\32bit(位) 2^8\2^32
在使用八种数据类型,有几点要注意下:
1.如果一个整数没有加上任何标识的时候,那么默认的是int类型的数据;如果需要把该数据表示成long类型的时候,那么需要在数据后面加上L,L是不区分大小写的,但是建议最好用大写表示
2.如果一个小数没有加上任何标识的时候,那么默认的是double类型的数据;如果需要把该数据表示成float类型的时候,那么也需要在数据后面加上F,F也是不区分大小写的
声明变量的方式:
1.数据类型 变量名;
2.数据类型 变量名1,变量名2.......;
声明变量要注意的几点:
1.变量必须是先声明后使用
2.在一个作用域中是不能声明同一个变量名
字符串的数据类型:String,他是属于引用类型数据
class Demo1
{
public static void main(String[] args)
{
byte age = 120; //声明了一个byte类型的变量,该变量的名字叫age,把120存储到了age变量中。
short money = 128;
int bossMoney = 1000000000;
long bankMoney = 10000000000000000L;
//存储小数
float f = 3.14f;
double d = 3.1415926537;
//存储布尔值
boolean b = false;
//存储字节
char c = 'a';
//存储字符串
String str = "hello world";
System.out.println(str); //获取一个变量存储的数据时,只需要使用变量名即可。
}
}
数据类型转换:
小数据类型------------>大数据类型 自动类型转换
大数据类型------------>小数据类型 强制类型转换
数据类型转换可以理解为小容器(小数据类型)里的东西放到大容器(大数据类型)里,是可以放进去的;如果把大容器(大数据类型)里的东西放到小容器(小数据类型)里,那么就可能没办法全部放进去,这样就会造成大容器里的东西丢失一部分(溢出)
强制类型转换的格式:
小数据类型 变量名=(小数据类型)大数据类型
数据类型转换要注意几点:
1.凡是byte、short、char类型的数据在运算的时候都会自动转换成int类型的数据在运算
2.两个不同类型的数据在运算的时候,结果取决于大的数据类型
class Demo2
{
public static void main(String[] args)
{
byte b= 11;
short s = b; // 把b变量存储的值赋予给s变量。
int i = s;
long l = i;
System.out.println(l);//输出的结果:11
int i = 128; //4个字节
byte b =(byte) i; // 4字节->1个字节,需要强制类型转换
System.out.println(b); //输出的结果: -128
//凡是byte、short 、 char数据类型数据在运算的时候都会自动转换成int类型的数据再运算。
byte b1 =1;
byte b2 = 2;
byte b3 = (byte)(b1+b2);
System.out.println(b3); //输出的结果:3
System.out.println('a'+1); //输出的结果:98
//两个不同数据类型的数据在运算的时候,结果取决于大的数据类型
int i =10;
long l = 20;
i = (int)(i+l);
System.out.println(i);//输出的结果:30
}
}