修饰符:
static静态
final最终
abstract抽象
访问修饰符(public 、 private 、 protected、 默认)
当前类 同包其他类 不同包子类 不同包非子类
public √ √ √ √
protected √ √ √ ×
默认 √ √ × ×
private √ × × ×
1.关键字
1.final关键字(最终类)
final关键字可以用于修饰类,修饰方法,修饰变量,它是指“不可改变”,“最终”的含义,所以被final修饰的类,方法,变量会有以下特种: 1、final修饰的类不能被继承。 2、final修饰的方法不能被子类重写。 3、final修饰的变量,叫常量,只能赋一次值
2.static 修饰符
静态变量: static 关键字用来声明独立于对象的静态变量,无论一个类实例化多少对象,它的静态变量只有一份拷贝。 静态变量也被称为类变量。局部变量不能被声明为 static 变量。 静态方法: static 关键字用来声明独立于对象的静态方法。静态方法不能使用类的非静态变量。静态方法从参数列表得到数据,然后计算这些数据。
3.abstract 修饰符
抽象类: 抽象类不能用来实例化对象,声明抽象类的唯一目的是为了将来对该类进行扩充。 一个类不能同时被 abstract 和 final 修饰。如果一个类包含抽象方法,那么该类一定要声明为抽象类,否则将出现编译错误。 抽象类可以包含抽象方法和非抽象方法。 声明变量类型 变量名 =(值);
4.this和super
super关键字: super.xxx:调用父类的成员变量或方法 super():调用父类无参构造方法 必须写在构造方法的第一行 super(参数):调用父类有参构造方法 注意:一般情况下:程序员需要给所有类添加无参构造尤其是父类被继承时,为了防止子类调用父类无参构造时报错! char i = 54; sysout(i) 输出结果为54 ASCII对应的字符。 char i = "5"; sysout(i) 输出结果为5的ASCII。
2.基本数据类型
byte | 8位有符号以二进制补码表示的整数 | 最小-128(-2^7) 最大 127(2^7-1) 默认0 |
---|---|---|
short | 16 位有符号的以二进制补码表示的整数 | 最小 -32768(-2^15)最大32767(2^15 - 1)默认是0 |
int | 32位、有符号的以二进制补码表示的整数 | 最小值是 -2,147,483,648(-2^31); 最大值是 2,147,483,647(2^31 - 1); 一般地整型变量默认为 int 类型; 默认值是 0 |
long | 64 位、有符号的以二进制补码表示的整数; | 最小值是 -9,223,372,036,854,775,808(-2^63); 最大值是 9,223,372,036,854,775,807(2^63 -1)默认是0L |
float | 单精度、32位、符合IEEE 754标准的浮点数; | 默认值是 0.0f; |
double | 双精度、64 位、符合IEEE 754标准的浮点数 | 默认值是 0.0d |
boolean | 表示一位的信息; | 只有两个取值:true 和 false;默认是false |
char | 单一的 16 位 Unicode 字符; | 最小值是 \u0000(即为 0); 最大值是 \uffff(即为 65535); char 数据类型可以储存任何字符; |
3.引用数据类型
在java里面除去基本数据类型的其他类型都是引用类型,自己定义的class类都是引用类型,可以像基本类型一样使用。常见的有String、StringBuffer、ArrayList、HashSet、HashMap等。
引用数据类型是指由类型的实际值引用(类似于指针)表示的数据类型。如果为某个变量分配一个引用类型,则该变量将引用(或“指向”)原始值。引用类型包括类、接口、委托和装箱值类型。 引用数据类型的变量只可能存储两类值:null 或 地址值(含有变量类型)