一.运算符:优先级,结合性
一句话总结:点号自反非,算关逻赋移。
instanceof 实例 | volatile 易失 | super 父类,超类 | transient 短暂 | synchronized 线程,同步 | strictfp 严格,精准 | package 包 | throws 声明一个异常可能被抛出 |
native 本地 | throw 抛出一个异常对象 | try 捕获异常 | catch 处理异常 | finally 有没有异常都执行 | switch 开关 | case 返回开关里的结果 | this 本类 |
boolean 布尔型 | byte 字节型 | char 字符型 short 短整型 | int 整型 float 浮点 | double 双精 long 长整型 | default 默认 | void 无返回值 | return 返回 |
if 如果 | else 反之 | for 循环 | while 循环 | do 运行 | break 跳出循环 | continue 继续 | null 空 |
false 假 | true 真 | static 静态 | final 终极,不可改变的 | new 新,创建 | import 引入 | | |
class 类 | extends 扩允,继承 | interface 接口 | implements实现 | abstract 声明抽象 | | public 公共的 | protected 受保护的 |
1.关键字:instanceof介绍:
作用:是测试它左边的对象是否是它右边的类的实例,返回boolean类型的数据。举个例子:
String s = "I AM an Object!";
boolean isObject = s instanceof Object;
我们声明了一个String对象引用,指向一个String对象,然后用instancof来测试它所指向的对象是否是Object类的一个实例,显然,这是真 的,所以返回true,也就是isObject的值为True。
三.java中内存分类及作用
1.java中内存的四种类型及作用:
(1)堆区(heap): 存储new出来的东西,如对象,数组。
(2)栈区(stack): 存储引用地址,基本数据类型变量
(3)数据段(data segment):存储静态常量,字符串常量
(4)代码段(code segment):存储java类,代码
2.
四.一些编程知识细节
1.数据输入Scanner用法。
Scanner in=new Scanner(System.in);
int x=in.nextInt();
2.int与String的相互转换
(1)int转化成string:
int i=123; String s="";
法1:s=i+"";
法2:s=String.ValueOf(i);
两种方法的区别:
(2)String转换成int
两种方法的区别:
五.跳转语句
1.java中的跳转语句有:continue,break。虽然java保留了goto作为关键字,但是并不使用。
2.continue:跳出一次的循环;continue后面的语句不执行。
3.break:终止循环,彻底的跳出循环。
六.数组
1.数组:相同的类型的数据,存储在连续的存储单元中。
2.数组是一旦声明数组的长度,就不能更改其大小;是定长的。
3.数组元素通过数组名和索引来访问,索引从0开始;数组可以是一维,也可以是多维。
4.java中不允许将数组分配在栈内存中,即只能从堆内存中为数组分配空间;
5.new操作符用来从堆中分配指定类型的内存空间,并返回相应类型的引用,其作用类似于malloc函数。
6.在Java中声明数组有如下方式:
//仅声明数组的引用,但没有分配内存空间
float[] fAry;
//声明数组的同时,根据指定的长度分配内存,但数组中没有值
char[] chAry = new char [10];
//声明数组并分配内存,同时将其初始化
int[] ary1 = new int []{1, 2, 3, 4, 5};
//与前一种方式相同,仅仅只是语法相对简略
int[] ary2 = {1, 2, 3, 4, 5};
7.数组之间的赋值:
因此,修改一个数组的某个元素,会改变另一个数组的元素。