L'instanciation d'une classe c'est créer un objet ayant pour modèle la classe concernée.
Cette opération est assimilable à l'allocation d'une variable (objet) d'un certain type (classe).
Une instance (aussi appelée objet) est le résultat de l'instanciation (création d'un objet de la classe voulue).
Allocation statique.
Il est possible d'allouer un objet de manière statique (zone des variables statiques).
L'objet est alors libéré automatiquement (sortie de programme pour une instance globale, sortie de fonction pour une instance locale à la fonction, ...).
Certains langages (tel Java) n'autorisent pas ce genre d'allocation.
L'allocation statique à l'intérieur d'une fonction crée un objet local alloué dans la même zone mémoire que les variables locales : la pile.
La pile ayant une taille limitée, il n'est pas recommandé d'allouer statiquement de grands objets.
De la même manière, il n'est pas recommandé d'appeler une fonction allouant un objet de taille moyenne de manière récursive sur une grande profondeur, car la quantité allouée grimpe rapidement, pouvant provoquer un débordement de pile.
Pour résoudre ce problème, au lieu de la solution limitée d'augmenter la taille de la pile, il est préférable dans ce cas d'allouer les objets de manière dynamique, sur le tas, la zone mémoire dédiée.
Allocation dynamique.
Il est également possible d'allouer un objet dynamiquement en utilisant explicitement une instruction d'allocation (généralement un opérateur nommé codice_1). L'objet doit être libéré explicitement (C++), ou il peut être libéré automatiquement par un ramasse-miettes (Java, C#). Un ramasse-miettes s'occupe de libérer les espaces de mémoire qui ne sont plus référencés, et se déroule en général de façon asynchrone (la libération n'est pas immédiate).
Cycle de vie.
Une fois l'espace mémoire alloué à un objet, les champs de celui-ci sont initialisés par le constructeur invoqué lors de l'instanciation.
Un constructeur est une méthode spéciale qui ne retourne rien.
En Java, C++ et C#, le constructeur des instances d'une classe doit porter le même nom que la classe.
Après utilisation de l'objet, la zone mémoire qu'il occupe doit être libérée afin de pouvoir allouer d'autres objets.
Un objet alloué statiquement est désalloué automatiquement à la sortie du contexte de son allocation (programme, fonction ou bloc de code local).
Un objet alloué dynamiquement doit être libéré de manière explicite :

Programmation/Programmation impérative
La programmation impérative est un paradigme de programmation où le programmeur dicte explicitement au processeur ce qu'il doit faire (ordres impératifs).
Les opérations sont décrites en séquences d'instructions exécutées par l'ordinateur pour modifier l'état du programme.
Ce type de programmation est le plus répandu parmi l'ensemble des langages de programmation existants.
Il se différencie de la programmation déclarative dont la programmation logique et la programmation fonctionnelle sont des sous-ensembles.

Grec ancien/Pour aller plus loin
Vous souhaitez aller plus loin que ce livre ou tout simplement avoir un complément d'informations ? Voici une liste de sites ou de livres à lire.

Grec ancien/Voix
À quoi servent les voix ?
Les voix sont, comme les cas des déclinaisons, des manières de conjuguer le verbe en fonction de la phrase.
Les différentes voix.
En grec ancien, il existe trois voix :