0Pricing
C# Academy · Lección

Campos, propiedades automáticas e inicializadores de objetos

Defina campos y propiedades automáticas, y cree objetos con inicializadores de objetos concisos.

Campos, propiedades automáticas e inicializadores de objetos es una lección gratuita de C# Academy en CoddyKit. Esta es la lección 1 de 3. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de C# Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de C# Academy incluye 3 lecciones en total.

Descripción general de las clases

Objetivo: crear clases sencillas.

  • Campos contienen datos sin procesar
  • Propiedades automáticas exponen los datos de forma clara
  • Inicializadores de objetos establecen valores al crearlos

Campos en una clase

Los campos son variables dentro de una clase. Para los datos públicos, las propiedades son más seguras.

using System;

// Fields store raw data inside a class
public class Player
{
  public string name; // field (usually prefer properties for public APIs)
  public int level;
}

public class Program
{
  public static void Main(string[] args)
  {
    Player p = new Player();
    p.name = "Ada";
    p.level = 1;
    Console.WriteLine("Player " + p.name + " level " + p.level);
  }
}

Propiedades automáticas

Las propiedades automáticas exponen datos mediante get/set sin tener que escribir un campo. Puede establecer valores predeterminados sencillos.

using System;

// Auto-properties generate a hidden backing field
public class Book
{
  public string Title { get; set; }
  public string Author { get; set; }
  public int Pages { get; set; } = 0; // auto-property initializer (C# 6)
}

public class Program
{
  public static void Main(string[] args)
  {
    Book b = new Book();
    b.Title = "Clean Code";
    b.Author = "Robert C. Martin";
    b.Pages = 464;
    Console.WriteLine(b.Title + " by " + b.Author + " (" + b.Pages + " pages)");
  }
}

Inicializadores de objetos

Los inicializadores de objetos establecen las propiedades al crear el objeto, lo que mantiene el código breve y claro.

using System;

public class Person
{
  public string Name { get; set; }
  public int Age { get; set; }
}

public class Program
{
  public static void Main(string[] args)
  {
    // Object initializer calls set-accessors after construction
    Person p = new Person { Name = "Alan", Age = 30 };
    Console.WriteLine(p.Name + " (" + p.Age + ")");
  }
}

Campos frente a propiedades

Pauta:

  • Use campos privados para el almacenamiento interno.
  • Exponga propiedades públicas para poder añadir validación más adelante sin afectar a los llamadores.
  • Mantenga los nombres claros y sencillos.

Campos y propiedades juntos

Combine un campo privado con una propiedad para controlar las escrituras (invariantes sencillas).

using System;

// Private fields + public properties pattern
public class Product
{
  private int _stock;                   // field (internal storage)
  public string Name { get; set; }      // property (public API)
  public int Stock                      // property with simple guard
  {
    get { return _stock; }
    set
    {
      if (value < 0) value = 0; // simple safety for beginners
      _stock = value;
    }
  }
}

public class Program
{
  public static void Main(string[] args)
  {
    Product p = new Product { Name = "Pen", Stock = 5 };
    p.Stock = -3; // setter clamps to 0
    Console.WriteLine(p.Name + " stock = " + p.Stock);
  }
}

Concepto de propiedad automática

Comprobación rápida: ¿Qué es una propiedad automática en C#?

Repaso

Repaso: defina los datos con campos y expóngalos mediante propiedades automáticas. Use inicializadores de objetos para establecer valores al crear el objeto.

Preguntas frecuentes

¿La lección «Campos, propiedades automáticas e inicializadores de objetos» es gratis?

Sí — el texto completo de «Campos, propiedades automáticas e inicializadores de objetos» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de C# Academy, actualiza a CoddyKit PRO. El curso de C# Academy incluye 3 lecciones en total.

¿Qué aprenderé en «Campos, propiedades automáticas e inicializadores de objetos»?

Defina campos y propiedades automáticas, y cree objetos con inicializadores de objetos concisos. Practicas C# Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar C# Academy?

No se requiere experiencia previa. C# Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 3.

¿Cuánto tiempo toma la lección «Campos, propiedades automáticas e inicializadores de objetos»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de C# Academy?

Sí. Cada lección de C# Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Campos, propiedades automáticas e inicializadores de objetos
  2. Constructores y miembros estáticos
  3. Encapsulación e invariantes
← Volver a C# Academy