Java中的静态static关键字
一、内容理解:
静态:static 关键字
- static 关键字的用法:修饰符,用于修饰成员(成员变量、成员方法)
- 使用static修饰的变量和方法称为类变量和类方法,没有使用static修饰的变量和方法称为实例变量和实例方法
静态的特点:
- 随着类的加载而加载
- 静态优先于对象
- 被所有对象共享
- 可以直接被类名调用,也可以被对象调用
静态代码块
- 静态代码块是用大括号{}包围多行的代码,且用static关键字修饰
- 随着类的加载而加载,而且只执行一次。一般是使用静态代码块来对内成员变量进行初始化
静态代码块:
static{
}
非静态代码块:
{
}
静态使用注意事项:
- 静态方法只能访问静态成员(属性和方法),不能访问非静态的成员
- 非静态方法可以访问静态成员,也可以访问非静态成员
- 静态方法中不可能出现this、super关键字,因静态优先于对象
静态的利弊:
- 利:对于所有对象都共享数据,节省空间,可不new对象,直接用类名调用
- 静态随着类的存在而存在,生命周期过长;访问出现局限性,只能访问静态
静态的使用
- 当类中出现所有对象都共有数据是,该字段可以定义为静态
- 当方法内部没有使用到静态数据(对象的特有数据)时,改方法可以定义为静态