欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

static关键字全面理解

程序员文章站 2022-03-17 18:45:13
...
static关键字就是静态或全局的意思,可以用来修饰类、方法和变量。通常我们会听到类成员或者静态变量(就是加载后不会再变化)。当静态成员加载后就不会再变化,如:String字符串,一旦被初始化值就不会再改变。一般在开发中,我们将共有成员用static修饰。

1、 最常见的就是:用来修饰成员变量(将其变为类的成员),e.g.:程序状态和异常信息。(这两个一般是用static和final共同修饰,这个在开发中很常见)。

2、 用来修饰成员方法,将其变为类方法,就可以使用“类型.方法名”调用,常用于工具类。(就是不需要创建对象)

3、 静态代码块,就多个对象放在一起初始化(静态代码块被执行的较早,只在静态变量之后)

静态变量

接下来我们说说静态变量(被static修饰)和实例变量(没有被静态变量修饰)的不同:

1、 静态变量:在内存中只是一个拷贝,只被初始化一次,只分配一次内存,用类型可以直接访问,也可以通过创建对象来访问。

2、 实例变量:被调用需要创建对象,没创建一次就要分配一次内存,在内存中可以有多个考培,但相互不影响。

静态方法

静态方法可以直接通过类名来调用,实例也可以直接调用。因此静态方法中不能存在super和this关键字(如果有不是和耍流氓一样吗?实例变量和特定对象关联)。

相关推荐:

static关键字在PHP中的使用详解

new self()和new static()有什么区别

php中static与self两者之间的区别详解

以上就是static关键字全面理解的详细内容,更多请关注其它相关文章!