实例变量是面向对象程序设计中的一段数据,它对它所在的每个对象都有自己的唯一值,实例变量也可以称为实例成员、非静态字段和数据成员,它们是大多数对象的重要组成部分,保存对象用于计算的特定数据段。实例变量是面向对象...
实例变量是面向对象程序设计中的一段数据,它对它所在的每个对象都有自己的唯一值,实例变量也可以称为实例成员、非静态字段和数据成员,它们是大多数对象的重要组成部分,保存对象用于计算的特定数据段。实例变量是面向对象编程中的一段数据,对于它所在的每个对象都有自己的唯一值。例如,如果存在两个对象,a和B,其中对象a有一个实例变量“blah,对象B还有一个实例变量,名为“blah”,这两个“blah”变量是不同的实体,每个变量都与封装它的对象相关联,与对象A关联的变量“blah”的全名为“A.blah,“而与对象B相关联的变量“blah”的全名是“B.blah”。如果这些变量可以有自己的值,则每个变量都可以有自己的值。如果对象A和对象B属于同一类型,则会创建另一个该类型的对象C,并且对象C也将有一个实例变量“blah,“实例变量可以有自己的唯一值。实例变量通常与静态变量混淆,但两者有显著区别。与实例变量不同,实例变量中每个特定类型的对象都有自己的值,静态变量只有一个值,这个值对于每一个适当类型的对象都是一样的。静态变量通常被称为类变量,它与实例变量不同。根据分配给它们的可见性属性,实例变量可能只在特定对象内部、对象及其子类中可见,或者它所在的对象以及任何其他对象最后一种类型的可见性,称为公共可见性,通常被认为是实例变量的不良实践,因为在面向对象编程中很容易违反封装原则。尽管有这种禁忌,公共实例变量有时也是有用的。例如,Java中的很多标准类都有公共实例变量,这有时可以方便地修改属性。实例变量的可见性也会影响继承。如果一个类继承另一个类,这不会立即让两个类访问彼此的实例变量。父类和子类中的私有实例变量仍仅限于这些类,因此子类中的私有变量无法被超类看到,父类和子类唯一能看到的实例变量是超类中的受保护变量
-
发表于 2020-08-06 20:32
- 阅读 ( 1767 )
- 分类:电脑网络