java基本数据类型
内置数据类型
- byte 8位
- short 16位
- int 32位
- long 64位
- float 有符号单精度浮点数32位
- double 有符号双精度浮点数64位
- boolean 1位
- char 16位单一字符
引用数据类型
常量
用final修饰
类型转换
- 自动类型转换
- 浮点数会舍弃小数转换,而不是四舍五入
- 小容量类型可以自动转大容量类型
- 强制类型转换
char c1='a';
int i1 = c1+1;
System.out.println(i1);
byte b =(byte)i1;
System.out.println(i1);
整数的默认类型是int,小数的默认类型是double。
要定义float要在后面加F或f
java变量类型
- 局部变量
方法内
声明时需要初始化
public void exampleMethod(){
int localVar = 10;
}
局部变量存储在JVM栈上
- 实例变量/成员变量
类的实例
不明确初始化的话会有默认值(0,false,null)
public class ExampleClass {
int instanceVar; // 实例变量
}
- 静态变量或类变量
static
属于类而不是示例
public class ExampleClass {
static int classVar; // 类变量
public static final String APP_VERSION = "1.0.0";
private static int count = 0;
}
-
可以用类名和实例名访问
生命周期与程序一样长 -
为了保证静态变量的线程安全性,需要采取适当的同步措施,如同步机制、原子类或volatile关键字
-
命名规范包括驼峰和大写蛇形命名
- 参数变量
public void exampleMethod(int parameterVar) {
}
基本数据类型的参数变量默认为值传递,不影响原始值。对象类型则采用引用传递。
命名
一般大多为驼峰命名。类变量/静态变量可以用大写蛇形命名法,常量用全大写字母(final)
java修饰符
访问修饰符
- default:(默认,不写)同一包内可见
- private:同一类内可见(不能修饰类)
- public:所有类可见
- protected:同一包内可见(不能修饰类)
非访问修饰符
- static
- final
- abstract
- synchronized
- volatile