Objets de Classe
Un objet d'une classe peut être créé en utilisant la syntaxe suivante :
index.cs
1className variableName = new className();
Vous pouvez accéder au champ d'une classe en utilisant l'opérateur point (.
) :
index.cs
1variableName.fieldName
Par exemple :
index.cs
12345678910111213141516using System; class Player { public string username; } public class ConsoleApp { public static void Main(string[] args) { Player p1= new Player(); p1.username = "Don"; Console.WriteLine(p1.username); } }
L'expression new Player();
est utilisée pour créer un nouvel objet tandis que Player p1
sert à créer une variable destinée à stocker ce nouvel objet. Ainsi, écrire simplement Player p1;
ne crée qu'une variable vide sans objet à l'intérieur ; il est donc nécessaire de créer un nouvel objet et, par conséquent, de le stocker dans une variable : Player p1 = new Player();
.
Par conséquent, si un tableau de taille 10
est créé à l'aide de la classe Player
, cela ne crée pas 10 objets, mais un tableau vide ayant la capacité de stocker 10 objets Player. Ceci peut être illustré par l'exemple suivant :
index.cs
12345678910111213141516using System; class Player { public string username; } public class ConsoleApp { public static void Main(string[] args) { Player[] players = new Player[10]; players[0].username = "Don"; // Error on this line Console.WriteLine(players[0].username); } }
L'erreur indique "Object reference not set to an instance of an object", ce qui signifie simplement qu'une tentative d'accès à des données d'un objet inexistant a eu lieu – il n'y a pas d'objet à l'index 0
.
Ce problème peut être résolu en créant manuellement un objet à l'index 0
:
index.cs
12345678910111213141516using System; class Player { public string username; } public class ConsoleApp { public static void Main(string[] args) { Player[] players = new Player[10]; players[0] = new Player(); players[0].username = "Don"; Console.WriteLine(players[0].username); } }
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Awesome!
Completion rate improved to 2.04
Objets de Classe
Glissez pour afficher le menu
Un objet d'une classe peut être créé en utilisant la syntaxe suivante :
index.cs
1className variableName = new className();
Vous pouvez accéder au champ d'une classe en utilisant l'opérateur point (.
) :
index.cs
1variableName.fieldName
Par exemple :
index.cs
12345678910111213141516using System; class Player { public string username; } public class ConsoleApp { public static void Main(string[] args) { Player p1= new Player(); p1.username = "Don"; Console.WriteLine(p1.username); } }
L'expression new Player();
est utilisée pour créer un nouvel objet tandis que Player p1
sert à créer une variable destinée à stocker ce nouvel objet. Ainsi, écrire simplement Player p1;
ne crée qu'une variable vide sans objet à l'intérieur ; il est donc nécessaire de créer un nouvel objet et, par conséquent, de le stocker dans une variable : Player p1 = new Player();
.
Par conséquent, si un tableau de taille 10
est créé à l'aide de la classe Player
, cela ne crée pas 10 objets, mais un tableau vide ayant la capacité de stocker 10 objets Player. Ceci peut être illustré par l'exemple suivant :
index.cs
12345678910111213141516using System; class Player { public string username; } public class ConsoleApp { public static void Main(string[] args) { Player[] players = new Player[10]; players[0].username = "Don"; // Error on this line Console.WriteLine(players[0].username); } }
L'erreur indique "Object reference not set to an instance of an object", ce qui signifie simplement qu'une tentative d'accès à des données d'un objet inexistant a eu lieu – il n'y a pas d'objet à l'index 0
.
Ce problème peut être résolu en créant manuellement un objet à l'index 0
:
index.cs
12345678910111213141516using System; class Player { public string username; } public class ConsoleApp { public static void Main(string[] args) { Player[] players = new Player[10]; players[0] = new Player(); players[0].username = "Don"; Console.WriteLine(players[0].username); } }
Merci pour vos commentaires !