计算机语言发展史:
第一代语言:打孔机---->第二代语言:汇编--->第三代语言:C等面向过程的编程语言,C++面向过程/面向对象的编程语言,Java跨平台的纯面向对象,.net跨语言的平台
Java平台的体系结构:
Java SE(基础核心),Java ME,Java EE
Java ME运用于:移动设备,游戏,通信
Java EE运用于:JSP EJB 服务
Java SE运用于:面向对象 API JVM
Java语言的特点:
1.Java语言是一种面向对象的编程语言
2.Java语言是一种与平台无关的编程语言,因为他自身提供了程序运行的解释环境
3.支持多线程处理
4.Java语言是一种面向网络的高级语言
Java两种核心机制:JVM和垃圾回收机制
Java程序开发运行步骤:
java语言编写.Java文件
Java编译器翻译为JVM可以理解的指.class文件
Java解释器读取文件,翻译为计算机能执行的代码
JVM(Java Virtual Machine):Java虚拟机
1.Java虚拟机可以理解成为以字节码为机器指令的CPU
2.对于不同的运行平台有不同的虚拟机
3.Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”
GC(Garbage Collector):垃圾回收机制
1.不使用的内存空间应及时回收
2.在C/C++语言中由编程人员负责回收无用的内存
3.Java语言消除程序员无法回收无用内存的责任:他提供了一种系统级线程跟踪存储空间分配情况,并在JVM空闲时,检查并释放那些可能被释放的存储空间。
4.垃圾收集在系统运行中制动收集,程序员无法控制和干涉。
DOC: 命令
1,当前路径下有可执行的命令文件
2,当前系统下的环境变量的path路径下面有可执行的命令文件
关于环境变量:系统会优先在当前目录相面搜索用户输入的指令,如果没有找到那么会去环境变量里面去寻找,如果还是没有找到那么会提示不是内部命令,也不是可运行的程序或批处理文件
数据结构
基本数据类型:
1.整数(byte short int long)小数(float double)
byte:1字节 short:2字节 int:4字节 long:8字节
float:4字节 double:8字节
自动类型转化:将小的类型转换成大的类型:比如将long类型的值转化成int类型的值
强制类型转换:大的转换成小的(比如int类型的转换成byte类型的),可能会造成精度丢失或者溢出
精度丢失:将float的2.1强制类型装换为int,会变成2,产生精度丢失
溢出:将int类型的128转换成byte,会变成-127,产生溢出
2.字符:char
Java中字符是Unicode编码
在字符类型中,我们可以char=65,然后控制台输出,输出的内容是A,
也可以 char a='中';System.out.println((int)a);输出的内容是中这个字符的字符值
3.布尔类型:boolear
在进制表示中 0b表示二进制 0表示八进制 0x表示十六进制