繁体   English   中英

编程中实例的含义是什么?

[英]what is meaning of instance in programming?

我不明白它很长时间。 任何类似于“实例”的替代词更容易理解? 对于非程序员,你如何解释实例? 实例就像普通人世界中的例子。 如果我什至不明白它的意思,我就无法理解它是什么。

“实例”最好理解为它与编程中的“类”有关。 “类”用于定义一事物的属性和行为。 例如,“汽车”类可能会规定所有汽车都由它们的品牌、型号、年份和里程定义。

但是,在创建汽车的“实例”之前,您无法提供有关特定汽车的详细信息(例如,您的叔叔 Mickey 驾驶的 1978 年雪佛兰 Impala 行驶了 205,000 英里)。 它是捕获有关一辆特定汽车的详细信息的实例

要了解什么是实例,我们必须首先了解什么是类。

只是一种由编程语言提供的建模工具,用于表示程序或应用程序中的真实世界对象。

该类的结构可以容纳对象的属性(成员变量)及其操作(成员函数/方法)。

另一方面,实例只是从类创建的对象的变体。 您可以使用构造函数创建对象变体 ( Instance ),该构造函数是专门为此目的定义的类中的方法。

考虑一辆车,如果你想在你的应用程序中表示它,你可以定义一个标识为 Car 的类,它包含汽车的属性和汽车可以执行的操作。

假设它是用 Java 编程语言完成的,它看起来与此类似:-

public class Car{
    //the properties of the car
    private String make;
    private int year;
    private int gear;
    private int speed;
    ...

    //constructor used to create instances of the car
    public Car(String carMake, int yearManf){
        year = yearManf;
        make = carMake;
    }

    //Car Operation/methods

    public void setGear(int gearValue){
        gear = gearValue
    }
    public void applyBrake(int decrement){
        speed -= decrement;
    }
    public void accelerate(int increment){
        speed += increment;
    }   
    ...
}

创建汽车的实例:-

Car BMW = new Car("385 i", 2010);

宝马在这里是汽车的一个实例。

暂时离开编程世界:你知道人是什么。 你是“人”类的“实例”——我可以谈论一般的人(对象类),或者如果我有一个特定的想法,我会谈论一个“实例”。 实例可以具有并非作为类成员而自动产生的属性。 所有人都有一颗心,但并非所有人都有你的名字和出生日期。

我希望这能澄清一点?

int main()
{
    int a;     //An instance of integer
    int a,b;   //two instances of integer
    struct1 a; //An instance of struct1
    return 0;
}

这是一个非常标准的定义:

在面向对象编程 (OOP) 中,实例是任何对象的特定实现。 一个对象可以以多种方式变化。 该对象的每个实现的变体都是一个实例。 已实现实例的创建称为实例化。

每次程序运行时,它都是该程序的一个实例。 在从类创建对象的语言中,对象是类的实例化。 也就是说,它是具有指定值而不是变量的给定类的成员。 在非编程环境中,您可以将“狗”视为一个类,而您的特定狗则是该类的一个实例。

http://whatis.techtarget.com/definition/instance

以下是关于可能对您有所帮助的实例的精彩对话: https : //softwareengineering.stackexchange.com/questions/99202/is-it-called-class-or-object-instance

来自对象的对象或来自对象的引用。

粗略地说,有制作东西的模式,也有这些模式的实例

类是用于创建对象的模式。 用它创建的对象是类的实例。

class C { };
C c;          // instance of C
C d;          // instance of C

函数模板是用于创建函数的模式。 用它创建的函数是模板的实例。 这通常是隐式完成的,称为“隐式实例化”。

template <class T> void f(T) { }
f(int);       // implicit instantiation of f<int>
f(double);    // implicit instantiation of f<double>

类模板是用于创建类的模式。 用它创建的类是模板的实例。

template <class T> class X { };
X<int> xi;    // X<int> is instance of X, xi is instance of X<int>
X<double> xd; // X<double> is instance of X, xd is instance of X<double>

实例基本上是一个对象。 在实际的英语中,它的含义可能有所不同。 在这种情况下,英语中的实例可能意味着“参考”或“参考”。 编程中的这些对象实例也是对源代码的引用。

举一个简单的例子:我们有一个蓝图(班级)代表学生(对象),其中包含姓名、年龄、课程(班级成员)等字段。 我们这里有 2 个学生,Foo 和 Bob。 因此,Foo 和 Bob 是代表对象(学生人)的类(学生类)的 2 个不同实例。
信用:

据我所知,实例是指向类对象的指针。

ps:我可能是错的。

Instance 是一个变量,用于保存 Object 的内存地址。

我会说所有编程都是“实例”编程,例如编程c,OOPC(面向对象编程C ++),python,java等。因为所有语言都是相同的。 唯一的区别是编程的结构。

一些程序具有定义明确的类库。 我们可以说它是一个API(应用程序编程接口)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM