班(class)和实例变量(instance variables)的区别

大多数现代编程语言都支持面向对象编程。对象包含数据或属性。一个物体有一定的行为。它们被称为方法。程序可以使用对象建模。软件是程序的集合。因此,可以使用对象来设计和实现软件。对象使用方法进行交互。面向对象编程提高了代码的模块性和可重用性。应该有一个类来创建对象。类是创建对象的蓝图。因此,对象是类的实例。在编程中,需要存储数据。数据存储在存储器中。这些内存位置称为变量。成员变量是与特定对象关联的变量。...

关键区别–类与实例变量

大多数现代编程语言都支持面向对象编程。对象包含数据或属性。一个物体有一定的行为。它们被称为方法。程序可以使用对象建模。软件是程序的集合。因此,可以使用对象来设计和实现软件。对象使用方法进行交互。面向对象编程提高了代码的模块性和可重用性。应该有一个类来创建对象。类是创建对象的蓝图。因此,对象是类的实例。在编程中,需要存储数据。数据存储在存储器中。这些内存位置称为变量。成员变量是与特定对象关联的变量。它的所有方法都是可访问的。有两种类型的成员变量,即类变量和实例变量。类变量和实例变量之间的关键区别在于,如果只有一个变量副本与类的所有实例共享,则这些变量称为类变量,如果类的每个实例都有自己的变量副本,则这些变量称为实例变量。

目录

1. 概述和主要区别
2. 什么是类变量
3. 什么是实例变量
4.类和实例变量之间的相似性
5. 并列比较-类与实例变量以表格形式显示
6. 摘要

什么是类变量(class variables)?

当只有一个变量副本与类的所有实例共享时,这些变量称为类变量。类变量是在任何方法之外的类中声明的变量。这些变量包含关键字静电。这些变量与类关联,而不是与对象关联。

班(class)和实例变量(instance variables)的区别

图01:类变量和实例变量

用类变量引用下面的代码段。

公办职工{

公共静态int-id;

公共静态双薪制;

}

公开课考试{

公共静态void main(string[]args){

Employee e1=新员工();

员工e2=新员工();

}

}

根据上面的程序,e1和e2是雇员类型的对象。两者都有相同的内存拷贝。如果e1.id=1并且打印e2.id也将给出值1。可以使用Employee类名打印id和salary值,例如雇员.id, 员工工资等。

什么是实例变量(instance variables)?

当类的每个实例都有自己的变量副本时,这些变量称为实例变量。参考以下程序。

公办职工{

公共int id;

公共双薪制;

}

公开课考试{

公共静态void main(string[]args){

Employee e1=新员工();

e1.id=1;

e1、工资=20000;

员工e2=新员工();

e2.id=2;

e2。工资=25000;

}

}

在主程序中,e1和e2是对Employee类型对象的引用。可以使用点运算符(如e1.id、e1)为id和salary赋值。类Employee中的id和salary被称为实例变量。e1和e2是独立的对象。每个对象都有一个单独的实例变量副本。e1将有单独的id和salary,e2将有单独的id和salary。因此,实例变量是在创建对象或实例时创建的。

班(class)和实例变量(instance variables)的共同点

  • 两者都是变量类型。
  • 这两个变量都在类内,但在任何方法之外。

班(class)和实例变量(instance variables)的区别

类变量与实例变量
类变量是指只有一个变量副本与类的所有实例共享的变量。 当类的每个实例都有自己的变量副本时,实例变量就是变量。
联想
类变量与类关联。 实例变量与对象相关联。
份数
类变量为所有对象创建一个副本。 实例变量为每个对象创建单独的副本。
关键词
类变量应该有static关键字。 实例变量不需要特殊的关键字,例如static。

总结 - 班(class) vs. 实例变量(instance variables)

面向对象编程是主要的编程范式。它有助于使用对象对软件进行建模。对象是使用类创建的。对象创建也称为实例化。类提供了创建对象的蓝图。成员变量是与特定对象关联的变量。它的所有方法都是可访问的。成员变量有两种类型:类变量和实例变量。类变量和实例变量的区别在于,如果只有一个变量副本与类的所有实例共享,则这些变量称为类变量,如果类的每个实例都有自己的变量副本,则这些变量称为实例变量。

下载类vs实例变量的pdf版本

你可以下载这篇文章的PDF版本,并根据引文说明离线使用。请在这里下载PDF版本:类和实例变量的区别

引用

  • 发表于 2020-10-19 16:54
  • 阅读 ( 300 )
  • 分类:IT

你可能感兴趣的文章

班(class)和结构(c)#(structure in c#)的区别

...具有应包含在对象中的属性和方法。使用类创建对象称为实例化。要创建Student类型的对象,应该有一个名为Student的类。要在C中定义类,请使用“class”关键字。 类包含构造函数。它是一个特殊的函数,在创建类的新对象时执行...

  • 发布于 2020-10-19 17:15
  • 阅读 ( 224 )

班(class)和接口(interface)的区别

...性和方法创建一个类。学生和老师是客体。创建对象称为实例化。OOP也使用接口。接口和类看似相似,但它们有区别。本文讨论类和接口之间的区别。类和接口之间的关键区别在于类是引用类型,它是实例化对象的蓝图,而接口...

  • 发布于 2020-10-24 04:25
  • 阅读 ( 258 )

如何在python中创建简单类

...*tructor#the init method is resp***ible for initialising the values of the instance #variables in the class.def __init__(self, car_name, driver_name, license_plate_number, current_speed, speeding_charge, colour):self.car_name = car_nameself._driver_name = driver_nameself._license_plate_number = lic...

  • 发布于 2021-03-26 20:18
  • 阅读 ( 252 )

物体(objects)和班级(classes)的区别

...据结构。在面向对象的环境中,对象或对象被描述为类的实例。这两个对象和类彼此非常相似。把它放在现实世界的角度,桌子、电脑、电视等电器就是对象。要到达类的对象,使用方法。交互是因为对象的方法也被称为“数据...

  • 发布于 2021-06-23 17:37
  • 阅读 ( 234 )

班(class)和结构(struct)的区别

...设计、照明等,我们可以实际使用这个类;它们构成类的实例。 类的语法 Class Store { public string things; public string design; } 对象的语法 Store grocery = new Store(); Store Stationery = new Store(); 什么是结构(a struct)? 一个结构只包含数据,因此...

  • 发布于 2021-06-25 00:32
  • 阅读 ( 215 )

抽象类(abstract class)和java接口(interface in java)的区别

...常都会在接口中进行搜索。 Java中抽象类和接口的“Final Variables”——接口中声明的变量默认为Final,而抽象类可能包含也可能不包含非Final变量。 抽象类(abstract class) vs. java接口:比较表(interface in java: comparison table) 抽象类 接...

  • 发布于 2021-06-25 03:52
  • 阅读 ( 302 )

相关性(correlation)和回归(regression)的区别

... we mentioned before, regression ****ysis aids us to make predicti***. For instance, if the value of the independent variable ( ) was 1.000, then we can predict that  would be close to  . In reality, the value of  may not necessarily be exactly 1.614. Due to uncertainty, the actual value is li...

  • 发布于 2021-06-27 11:05
  • 阅读 ( 904 )

静止的(static)和最终的(final)的区别

...。静态变量的主要优点是有助于节省内存。 Figure 1: Static Variable 在上面的程序中,有一个名为count的静态变量。在构造函数中,计数增加1。在主程序中,创建三个student对象。打印计数将得到结果3,因为有三个对象。count变量由...

  • 发布于 2021-07-01 02:23
  • 阅读 ( 432 )

班(class)和结构(structure)的区别

...这些方法定义了对象的行为。此外,使用类创建对象称为实例化。 Figure 1: UML Diagram of a Class 类的成员是类的属性和方法。它们主要是三个访问说明符来支持OOP中的数据隐藏:public、private和protected。首先,公共成员对所有类都可...

  • 发布于 2021-07-01 04:30
  • 阅读 ( 294 )

结构(structure)和C++类(class in c++)的区别

...在main方法中使用它。在main方法中,他可以创建一个结构实例并使用它执行所需的任务。具有结构的程序示例如下。 Figure 1: C++ program with structure 如上图所示,有一个名为Book的结构。它包含三个属性:标题、作者和页面。在main方...

  • 发布于 2021-07-01 09:32
  • 阅读 ( 589 )
Pvtj9465
Pvtj9465

0 篇文章

相关推荐