一个类的实例和对象之间的基本区别是什么?我一直很困惑它们之间到底有什么不同。
实例是内存中的一个对象。基本上当你使用它们时,你创建对象并对它们进行实例化。
以下是一篇关于类、对象和实例的好文章,作者讨论了Java,但它适用于所有面向对象编程: 类 vs 对象 vs 实例
简单来说,对象是类的一个实例。
当人们谈论对象时,它更具体地指代类中变量的值的特定实例。希望我至少没有使你感到困惑。
我认为大多数程序员会将“object”和“instance”互换使用。一些学究可能会试图区分它们,但如果这些区别不被术语的大多数用户所认可,则这些区别是毫无意义的。
“Class”当然是对象的一种模板或设计。
对象是某物的定义,而实例是该物的一种表现形式。以椅子为例,根据定义,它有一个座位、3个或更多的腿和一个靠背。这就是对象。请注意,我们只有一个定义,而没有实际对象。现在如果我们制造了一把椅子,那么我们就有了一个实例。
在大多数编程语言中,使用new运算符来创建实例...
Chair c = new Chair();
还有其他方法。 在这种情况下,Chair是对象,c是实例。我们也可以轻松地创建其他椅子,这对对象定义没有影响。
实例是对象的具体实现。当应用程序运行时,实际上是该程序的一个实例在运行。例如,如果我们有一个代表汽车的对象,那么宝马就可以是其实例。
类文件源代码定义了对象。要在其他代码中使用该对象,您需要创建一个实例:
对象定义:
public class Person {
String mName;
public Person(){}
public Person(String name){
mName=name;
}
public void setName(String name){
mName=name;
}
public String getName(){
return mName;
}
}
对象使用(实例):
Person me=new Person("John Doe");
//me is an instance of the person object;
Person you=new Person("John Smith");
Person spouse=new Person("Jane Doe");
//lots of instances but only one Person Object
String myName=me.getName();
接下来请了解静态对象 :)