静态变量,也称为全局变量,是与类的特定实例无关的数据段。无论创建了多少个类对象,这些变量只能存在一个值。根据上下文的不同,静态变量可以比其实例更灵活,也可以更具限制性变量对应项,对于类类型的每个特定对象都有自己的...
静态变量,也称为全局变量,是与类的特定实例无关的数据段。无论创建了多少个类对象,这些变量只能存在一个值。根据上下文的不同,静态变量可以比其实例更灵活,也可以更具限制性变量对应项,对于类类型的每个特定对象都有自己的离散值。在面向对象编程语言中,良好的编程实践通常要求将静态对象、方法或变量的使用保持在最低限度,但它们确实有有用的应用。在面向对象编程语言中,良好的编程实践通常要求将静态对象、方法或变量的使用保持在最低限度,但它们确实有一些有用的应用。静态变量有时被认为是限制性的一个主要原因是,一个变量不能存在多个值。对变量的任何赋值都会覆盖前一个值,并且前一个值中的任何信息都会丢失。如果没有变量的多个副本,则会有多个数据无法存储值。如果更改了该值,则它影响的每个对象都必须使用新值运行,如果不打算删除旧值,则更改可能会对特定类类型的每个实例对象有害。除非变量在创建时以某种方式锁定,意外更改的风险及其对对象造成的后续破坏使一些程序员尽可能避免使用静态变量。静态变量有时被认为是灵活的,原因与它们被称为限制性变量的原因相同。即使变量的值未被锁定,有计划地改变它的价值可以产生积极的影响在一个类的所有对象之间共享的变量保证是一致的,并且可以在类内部和外部使用,因为它的值总是相同的,尤其是在常量的维护和序列化的实现上,Java特别依赖于这种静态序列化机制。程序员在实现静态变量时经常使用某些通用规则。这些变量通常作为小数据值工作,因为大型静态对象可以使程序比它必须严格得多。小数据值可以快速而容易地更改,而不必太担心引入错误。大型静态对象需要花费更多的时间和精力来更改,而且更容易引入会破坏所有类对象的错误。这些是指导原则,而不是牢不可破的规则可用于小变量和大变量,具体取决于程序
-
发表于 2020-08-06 09:15
- 阅读 ( 951 )
- 分类:电脑网络