static关键字

一,static关键字的特点
1、static是一个修饰符,用于修饰成员。(成员变量,成员函数)static修饰的成员变量 称之为静态变量或类变量。
2、static修饰的成员被所有的对象共享。
3、static优先于对象存在,因为static的成员随着类的加载就已经存在。
4、static修饰的成员多了一种调用方式,可以直接被类名所调用,(类名.静态成员)。
5、static修饰的数据是共享数据,对象中的存储的是特有的数据。

二,static修饰成员变量和成员方法
当类中的变量或者方法被static修饰时,该变量或方法就被所有的对象共享了(注意Test类和result类需要在同一个包/路径下面)
在这里插入图片描述在这里插入图片描述
三,static修饰内部类以及如何调用内部类中的方法和变量
在这里插入图片描述
四,静态代码块的使用

在这里插入图片描述在这里插入图片描述注意:
静态优先原则,所以优先调用静态代码块,然后调用构造方法
一次性原则:静态代码块只能使用一次

补充:
构造方法 构造方法作用: 是定义在java类中的一个用来初始化对象的方法,用new+构造方法,创建一个新的对象,并可以给对象中的实例进行赋值。 构造方法的特点: 1.未指定构造方法时,系统会默认是无参的构造方法。 2.构造方法可以重载:方法名相同,但参数不同的多个方法,调用时会自动根据不同的参数选择相应的方法。(有关于方法重载可以在我主页里面查看) 3.构造方法是不被继承的 4.人为添加构造方法了,就以添加的构造方法为主