In a computer system, any time a new context is created based on some model, it is said that the model has been instantiated. In practice, this instance usually has a data structure in common with other instances, but the values stored in the instances are separate. Changing the values in one instance will then not interfere with the values of some other instance. A compute instance can be software or hardware which can run code, for example a
CPU
A central processing unit (CPU), also called a central processor, main processor or just processor, is the electronic circuitry that executes instructions comprising a computer program. The CPU performs basic arithmetic, logic, controlling, and ...
,
GPU or a
virtual machine
In computing, a virtual machine (VM) is the virtualization/ emulation of a computer system. Virtual machines are based on computer architectures and provide functionality of a physical computer. Their implementations may involve specialized har ...
.
Computer graphics
In computer graphics, a polygonal model can be instantiated in order to be drawn several times in different locations in a scene.
This is a technique that can be used to improve the performance of
rendering, since the work needed to display each instance overlaps.
Object-oriented programming
In
object-oriented programming
Object-oriented programming (OOP) is a programming paradigm based on the concept of " objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of ...
(OOP), an instance is a concrete occurrence of any
object, existing usually during the
runtime of a computer program. Formally, "instance" is synonymous with "object" as they are each a particular value (realization), and these may be called an instance object; "instance" emphasizes the distinct identity of the object. The creation of an instance is called instantiation.
An object may be varied in a number of ways. Each realized variation of that object is an instance of its class. That is, it is a member of a given class that has specified
values
In ethics and social sciences, value denotes the degree of importance of something or action, with the aim of determining which actions are best to do or what way is best to live (normative ethics in ethics), or to describe the significance of dif ...
rather than
variables. In a non-programming context, you could think of "dog" as a type and your particular dog as an instance of that class.
In
class-based programming, objects are created from
classes by
subroutine
In computer programming, a function or subroutine is a sequence of program instructions that performs a specific task, packaged as a unit. This unit can then be used in programs wherever that particular task should be performed.
Functions ma ...
s called
constructors, and destroyed by
destructors. An object is an instance of a class, and may be called a class instance or class object; instantiation is then also known as construction. Not all classes can be instantiated
abstract classes cannot be instantiated, while classes that can be instantiated are called
concrete classes. In
prototype-based programming, instantiation is instead done by copying (cloning) a prototype instance.
Operating systems
In the context of
POSIX-oriented operating systems, the term "(program) instance" typically refers to any executing
process instantiated from that
program (via
system calls, e.g.
fork() and
exec()); that is, each executing process in the OS is an instance of some program which it has been instantiated from.
References
{{Reflist
__notoc__
Object (computer science)