Programmation C sharp/Les objets

Un livre de Wikilivres.
Sauter à la navigation Sauter à la recherche
Programmation C#
Programmation C#
Sommaire
Le langage
Programmation avancée
API .Net
Ressources
Modifier ce modèle

Un objet est un type référence. Il s'agit d'une instance de classe.

Le type object[modifier | modifier le wikicode]

La classe System.Object est équivalente au type object. Il s'agit de la classe de base de toutes les autres classes.

L'auto-boxing/unboxing permet d'utiliser le type object pour n'importe quel type de valeur :

object obj;
obj = 10;           // int -> Int32 -> object
obj = "Une chaîne"; // string -> String -> object

Créer un nouvel objet[modifier | modifier le wikicode]

Créer un nouvel objet est appelé instancier une classe et utilise l'opérateur new :

classe variable=new classe(arguments...);

Cet opérateur effectue les opérations suivantes :

  • allocation d'une zone mémoire d'une taille suffisante pour accueillir les attributs définis dans la classe spécifiée,
  • initialisation des attributs à leur valeur par défaut (définie dans la classe ou 0 sinon),
  • appel au constructeur acceptant les arguments spécifiés.

L'appel peut échouer pour plusieurs raisons :

  • la classe spécifiée n'a pas pu être chargée,
  • l'espace mémoire libre est insuffisant,
  • une exception a été lancée par le constructeur.

Dans tous les cas une exception est lancée.