1.访问修饰符
当前包 | 同包 | 子类 | 其他类 | |
---|---|---|---|---|
private | √ | × | × | × |
default | √ | √ | × | × |
protected | √ | √ | √ | × |
public | √ | √ | √ | √ |
2.原码,补码和反码(用2,-2举例,4个字节,32位)
原码:负数符号位为1: 00000000 00000000 00000000 00000010,10000000 00000000 00000000 00000010
反码:正数的反码和原码相同。负数的反码与原码的符号位不变,其他位取反,11111111 11111111 11111111 11111101
补码:正数的补码和原码相同。负数的补码为反码+1,01111111 11111111 11111111 11111110
计算机以整数的补码进行运算
3.Java流程控制语句
顺序结构
选择结构
循环结构
4.运算符
算术运算符:+ -
比较运算符:> <=
赋值运算符:= +=
逻辑运算符:& | !^
位运算符:<< >> & | ^ ~
三目运算符:?:
5.变量
- 成员变量
- 静态变量
在类中以static关键字声明,但必须在方法构造方法和语句块之外。
无论类对象有几个,类值拥有静态变量的一份拷贝 - 非静态变量
当一个对象被实例化之后,每个实例变量的值就跟着确定
实例变量可以直接通过变量名访问。但在静态方法以及其他类中,就应该使用完全限定名。 - 调用方式
- 静态变量也称为类变量,可以直接通过类名调用。也可以通过对象名调用。这个变量属于类。
- 成员变量也称为实例变量,只能通过对象名调用。这个变量属于对象。
- 存储位置
- 静态变量存储在方法区中的静态区。(实际上就在栈区,因为调用栈的速度会比堆更快)
- 成员变量存储在堆内存
- 生命周期
- 静态变量随着类的加载而存在,随着类的消失而消失。生命周期长。
- 成员变量随着对象的创建而存在,随着对象的消失而消失。
- 一般情况下应该把实例变量设为私有。通过使用访问修饰符可以使实例变量对子类可见。
- 静态变量
- 局部变量:类的方法中的变量
- 访问修饰符不能用于局部变量
- 局部变量是在栈上分配的。
- 局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用。