static关键字:( 静态的 )
1. static关键字的用处:static可以用来修饰属性( 全局变量 ),方法,代码块;但是不能用来外部类,局部变量。( static修饰的成员属于静态成员,静态成员只有一份,存储在静态区)
2. static关键字的使用格式:1>. 修饰属性:" static 数据类型 = 变量值;"。
2>. 修饰方法:" 方法的访问权限修饰符 static 返回值类型 方法名 ( [ 参数列表 ] );"
3. static关键字修饰的属性的调用:方式1>. 类名 . 属性;
方式2>. 类名 对象名 = new 类名( ); 对象名 . 属性;
4. static关键字修饰的方法的调用:方式1>. 类名 . 方法名( [ 参数列表 ] );
方式2>. 类名 对象名 = new 类名( ); 对象名 . 方法名( [ 参数列表 ] );
5. 生命周期:1>. static关键字修饰的成员的生命周期:从类的加载开始到程序的退出。
2>.非static关键字修饰的成员的生命周期:从对象的创建开始到对象的销毁。
6. 当创建一个对象时成员调用的顺序:1>. 类加载:类的属性初始化( static代码块 )。
2>. 创建对象:普通属性初始化( 构造方法 )。
7. static关键字使用的注意事项:1>. 静态的方法只可以调用静态的成员;非静态的方法,既可以调用静态的成员也可以调用非静态的成员。
2>. 静态方法中不能有this和super关键字。
3>. 静态方法不能被重写。
4>. 在初始化时静态成员初始化在前,非静态成员初始化在后。
5>. 只要是static关键字修饰成员都是属于类的,不属于对象。
6>. static关键字修饰的成员属于所有对象所共有的。
8. static的唯一性:static唯一性指的是static修饰的成员变量是唯一的,多个实例对象共享一个成员变量。
9. static关键字的适用场景:1>. 修饰属性时:只有一份的数据可以用static修饰。
2>. 修饰方法时:可以用来修饰工具类的方法,方便调用。
3>. 静态代码块:主要用于静态属性初始化,只会执行一次。
10. static关键字的优点:1>. 避免创建对象。
2>. 方便数据共享。
3>. 保留唯一副本。