什么是JVM?
jvm就是一种Java的虚拟机,运行加载Java程序的平台
(虚拟机是运行在物理机上的虚拟的操作系统平台)
1.跨平台
Java程序运行在JVM,不同的系统操作对应不同的JVM,只要安装对应的JVM就可以运行同一个Java程序
2.JVM内存分配
栈内存:存取速度快,存放声明的变量
堆内存:读取速度慢,存放new的对象
方法区: 类型,定义的方法,静态
变量和常量
1.存在的意义?2.特性 3.怎么用
程序运行时需要有数据,数据需要有存储,就有了变量和常量
变量:数据类型 变量名 [=值];
常量: final 数据类型 变量名 =值;
数据类型
基本数据类型(栈区)
4个整型:byte(字节整型,1字节 取值范围为【-128,127】)
short (短整型,2字节 取值范围为【-32768,32767】)
int(整型,4字节 取值范围约21亿)
long(长整型,8字节 long类型表示long类型常量,要加L或者l,建议加L)
2个浮点:float (4字节,单精度,能精确到6~7位,声明一个小数类型,要加F或者f,建议加F)
double (8字节,双精度,能精确到15~16位,小数类型默认是double类型)
1个字符:char 2字节
1个逻辑:boolean 1字节(true , false,一真一假,一般用于逻辑运算)
类型转换:小转大,自动转;大转小,强制转.
引用数据类型(堆区)
引用数据类型包括:类(class),接口类型(interface)、数组类型(list)、枚举类型、注解类型,字符串型(String,String的衍生类,如StringBUilder等)。
流程控制
选择
if单分支 if(){}
if双分支 if(){}else{}
if多分支 if(){}else if(){}....else{}
switch-case
switch (变量):
case1q:语句块 break;
....
default: 语句块 break;
循环
循环三要素:声明起点,判断终点,执行迭代
1)循环变量的初始化
2)循环的条件(以循环变量为基础)
3)循环变量的改变(向着循环的结束变)
while循环,先判断后执行,有可能一次都不执行
do -while,先执行后判断,至少执行一条 要素1与要素3相同时,首选do...while
for循环应用率高,固定次数循环
break:跳出循环
continue:跳过循环体中剩余语句而进入下一次循环
while在不确定循环次数的时候使用,for在确定循环次数的时候使用
顺序
代码正常从上到下、从左至右执行