首页  >  文章  >  后端开发  >  static关键字全面理解

static关键字全面理解

小云云
小云云原创
2018-03-08 09:12:281777浏览


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关键字全面理解的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn