java语言发展史
SUN(Stanford University Network 斯坦福大学网络公司)
1995年5月23日,java语言诞生
1996年1月JDK1.0
1998年12月JDK1.2(将java分成了J2SE,J2EE,J2ME)
2004年10月JDK1.5(改名javaSE5.0)
2009年4月20日,甲骨文74亿美元收购SUN公司
什么是JVM
JVM(Java Virtual Machine)是java虚拟机,java程序需要运行在虚拟机上,不同平台有自己的虚拟机,因此java语言可以跨平台。
什么是JRE
包括Java虚拟机和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
什么是JDK
JDK是提供给Java开发人员使用的,其中包含了java的开发工具(编译工具javac.exe打包工具jar.exe等),也包括了JRE。
计算机存储单元
无论是内存还是硬盘,计算机存储设备的最小信息单元叫“位(bit)”,我们又称之为“比特位”,通常用小写字母b来表示。
而计算机最小的存储单元叫“字节(byte)”,通常用大写字母B来表示。 1B=8b 1KB=1024B
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
long类型:建议数据后加L表示
float类型:建议数据后加F表示
Java程序中要求参与的计算的数据,必须要保证数据类型的一致性,如果数据类型不一致将发生类型的转换
自动类型转换:将取值范围小的类型自动提升为取值范围大的类型
范围小的类型向范围大的类型提升,byte、short、char 运算时直接提升为int
byte、short、char <int<long<float<double
强制类型转换:将取值范围大的类型强制转换成取值范围小的类型
常用ASCLL码
字符 数值
0 48
A 65
a 97
变量前++ :先自加再赋值
变量后++ :先赋值再自加
逻辑运算符:
&(与)、&&(短路与)、|(或)、||(短路或)
&&(短路与):第一个条件不满足,后面的条件不再判断
循环中断
break:跳出当前层的循环
continue:停止运行剩余的循环主体,回到循环的开始处继续运行
switch中case穿透问题
在switch语句中,如果case的后面不写break,将出现穿透现象,也就是不会在判断下一个case的值,直接向后运行,直到遇到break,或者整体switch结束
数据类型 数组名[]=null; //默认值是null,表示暂时还没有任何指向的堆内存空间
数组名=new 数据类型[长度]; //使用关键词new命令编译器在堆内存中开辟一块堆内存供该数组使用
数组声明是在栈内存中保存了该数组的名称(实际上是保存对堆内存的引用地址)
方法的重载:方法名称相同,参数的类型和参数的个数不同,通过传递参数的个数及类型的不同可以完成不同功能的方法调用