静态修饰符static,类中的常量定义修饰符

2018-12-27  本文已影响0人  佑阳_x

static可以用来区分成员变量、方法是属于类本身还是属于类实例化后的对象。

有static修饰的成员属于类本身没有static修饰的成员属于类的实例

静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失

static是一个修饰符,用于修饰成员(成员变量和成员函数)

静态成员随着类的加载而加载。

静态成员优先于对象存在。

静态成员被所有对象所共享

静态成员多了一个中调用方式,可以被类名直接调用。

静态的优缺点

优点: 静态成员多了一种调用方式。可以直接被类名调用 格式 :类名.静态成员。也可以被对象调用。 

弊端 : 静态方法只能访问静态成员,出现了访问局限性。

静态修饰的数据对象共享的数据,存放在方法区的静态区中。 

非静态的数据,是每一个对象特有数据,存放在对象的所属的堆内存中。

当成员变量被静态修饰后,和非静态成员变量的区别:

静态变量也称为类变量,也就是直接可以被类名调用的变量。这个变量是所属于类的。 

非静态变量成为成员变量,或者实例变量,是被对象调用的,是所属具体对象的。

静态变量随着类的加载而加载,也意味着随着类的消失而消失。生命周期最长。 

实例变量,随着对象的创建而加载,随着对象的消失而消失。按照对象的生命周期而存在。

静态变量存储在方法区的静态区中。 

实例变量存在于对象所属的堆内存中。

静态变量数据,被所有对象所共享。 

实例变量是对象中的特有数据

上一篇下一篇

猜你喜欢

热点阅读