Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Objetos de Clase | Introducción a la Programación Orientada a Objetos (OOP)
C# Más Allá de lo Básico

bookObjetos de Clase

Un objeto de una clase puede crearse utilizando la siguiente sintaxis:

index.cs

index.cs

copy
1
className variableName = new className();

Se puede acceder al campo de una clase utilizando el operador punto (.):

index.cs

index.cs

copy
1
variableName.fieldName

Por ejemplo:

index.cs

index.cs

copy
12345678910111213141516
using 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); } }

La expresión new Player(); se utiliza para crear un nuevo objeto, mientras que Player p1 se utiliza para crear una variable para almacenar ese nuevo objeto. Por lo tanto, simplemente escribir Player p1; solo creará una variable vacía sin ningún objeto dentro; por ello, es necesario crear un nuevo objeto y, a su vez, almacenarlo en una variable: Player p1 = new Player();.

Por lo tanto, si se crea un arreglo de tamaño 10 utilizando la clase Player, no se crearán 10 objetos, sino que se creará un arreglo vacío con capacidad para almacenar 10 objetos Player. Esto se puede entender con el siguiente ejemplo:

index.cs

index.cs

copy
12345678910111213141516
using 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); } }

El error indica "Object reference not set to an instance of an object", lo que simplemente significa que se está intentando acceder a datos de un objeto que no existe; no hay ningún objeto para acceder en el índice 0.

Esto se puede solucionar creando manualmente un objeto en el índice 0:

index.cs

index.cs

copy
12345678910111213141516
using 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); } }
question mark

¿Cuál es la sintaxis correcta para crear un nuevo objeto a partir de una clase llamada Car?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 4

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Suggested prompts:

Can you explain why creating an array of objects doesn't automatically create the objects themselves?

How do I initialize all elements in an array of objects?

What does "Object reference not set to an instance of an object" mean in simple terms?

Awesome!

Completion rate improved to 2.04

bookObjetos de Clase

Desliza para mostrar el menú

Un objeto de una clase puede crearse utilizando la siguiente sintaxis:

index.cs

index.cs

copy
1
className variableName = new className();

Se puede acceder al campo de una clase utilizando el operador punto (.):

index.cs

index.cs

copy
1
variableName.fieldName

Por ejemplo:

index.cs

index.cs

copy
12345678910111213141516
using 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); } }

La expresión new Player(); se utiliza para crear un nuevo objeto, mientras que Player p1 se utiliza para crear una variable para almacenar ese nuevo objeto. Por lo tanto, simplemente escribir Player p1; solo creará una variable vacía sin ningún objeto dentro; por ello, es necesario crear un nuevo objeto y, a su vez, almacenarlo en una variable: Player p1 = new Player();.

Por lo tanto, si se crea un arreglo de tamaño 10 utilizando la clase Player, no se crearán 10 objetos, sino que se creará un arreglo vacío con capacidad para almacenar 10 objetos Player. Esto se puede entender con el siguiente ejemplo:

index.cs

index.cs

copy
12345678910111213141516
using 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); } }

El error indica "Object reference not set to an instance of an object", lo que simplemente significa que se está intentando acceder a datos de un objeto que no existe; no hay ningún objeto para acceder en el índice 0.

Esto se puede solucionar creando manualmente un objeto en el índice 0:

index.cs

index.cs

copy
12345678910111213141516
using 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); } }
question mark

¿Cuál es la sintaxis correcta para crear un nuevo objeto a partir de una clase llamada Car?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 4
some-alt