static关键字——静态
1、在Java语言中,static关键字是一种非常重要的修饰符,可以用于变量、方法、代码块和内部类等语法结构中。
2、它的主要作用是使得这些语法结构不再与对象实例相关,而是属于类本身,从而可以在不创建对象的情况下进行访问和调用。
3、static的特点:
(1)static可以修饰属性、方法、代码块和内部类
(2)static修饰的属性、方法和内部类可以直接使用类名进行调用
(3)static修饰的代码块在类加载时被执行,且只会执行一次,因为类只会加载一次。
(4)static修饰的属性属于类,不属于对象的实例。只有一个空间,后赋的值会覆盖先赋的值。属性的值可以被所有对象共享。
(5)静态内容在类执行时的出现顺序:静态属性——静态方法——静态块——普通属性——普通方法——构造方法
(6)静态内部类属于外部类本身,不属于外部类的对象实例,可以直接使用外部类名调用
4、案例解析:
(1)static可以修饰属性、方法、代码块和内部类
(2)static修饰的属性、方法和内部类可以直接使用类名进行调用
(6)静态内部类属于外部类本身,不属于外部类的对象实例,可以直接使用外部类名调用
(3)static修饰的代码块在类加载时被执行,且只会执行一次,因为类只会加载一次。
静态代码块是指被static修饰的代码块。静态代码块在类加载时就会被执行,而且只会被执行一次。它通常用于进行一些类的初始化操作,例如为静态变量赋初值。
(4)static修饰的属性属于类,不属于对象的实例。只有一个空间,后赋的值会覆盖先赋的值。属性的值可以被所有对象共享。
(5)静态内容在类执行时的出现顺序:静态属性——静态方法——静态块——普通属性——普通方法——构造方法
静态方法有以下几个特点:
①静态方法不能访问非静态的变量和方法。因为非静态的变量和方法需要先创建对象才能访问,而静态方法是不需要创建对象的。
②静态方法不能使用this关键字。因为this关键字代表当前对象,而静态方法是不需要当前对象的。
③静态方法可以被子类继承和重写。但是,如果在子类中重写了静态方法,那么只有在通过子类名来调用该方法时,才会调用子类中的方法,而不是父类中的方法。