Diseñar E Implementar Clases Basadas En El Diagrama Dado En C#

En esta tarea, diseñarás e implementarás un conjunto de clases basado en un diagrama dado. El diagrama describe la estructura y las relaciones de las clases, incluyendo atributos y métodos. Tu trabajo consiste en crear un proyecto donde cada clase se implementará en un archivo independiente, como se indica en el diagrama. Cada clase implementará sus atributos y métodos específicos, y todas las relaciones entre las clases seguirán una cardinalidad 1:1. Al completar esta tarea, practicarás el diseño y la programación orientados a objetos en C#.



Grupo

Programación orientada a objetos en C#

Objectivo

- Analice el diagrama proporcionado y determine las clases que deben crearse.
- Para cada clase, implemente los atributos y métodos especificados en el diagrama.
- Asegúrese de que todas las relaciones entre las clases se implementen con cardinalidad 1:1.
- Organice las clases en archivos separados para una mejor estructura y mantenibilidad del proyecto.
- Pruebe la funcionalidad de las clases con un programa principal que instancia objetos e invoca sus métodos.

Cree un proyecto y las clases correspondientes (utilizando varios archivos) para este diagrama de clases. Cada clase debe incluir los atributos y métodos que se muestran en el diagrama. Tenga en cuenta que todas las cardinalidades son 1:1.

+------------------+            +-----------------+

| Person | | Address |
+------------------+ +-----------------+
| - name: string | | - street: string|
| - address: Address| | - city: string |
+------------------+ | - zipCode: string|
| + Person(name: string, address: Address) | +-----------------+
| + Introduce() | | + GetFullAddress(): string |
+------------------+ +-----------------+
| ^
| |
+-------------------------------+
uses

Ejemplo de ejercicio en C#

 Copiar código C#
//Archivo Person.cs
// Person class representing a person with a name and a reference to an Address
public class Person
{
    // Private attributes for the person's name and their address
    private string name;
    private Address address;

    // Constructor to initialize a person with their name and address
    public Person(string name, Address address)
    {
        this.name = name;
        this.address = address;
    }

    // Method to introduce the person and their address
    public void Introduce()
    {
        Console.WriteLine($"Hello, my name is {name}. I live at {address.GetFullAddress()}.");
    }
}

//Archivo Address.cs
// Address class representing an address with street, city, and zip code
public class Address
{
    // Private attributes for street, city, and zip code
    private string street;
    private string city;
    private string zipCode;

    // Constructor to initialize the address with street, city, and zip code
    public Address(string street, string city, string zipCode)
    {
        this.street = street;
        this.city = city;
        this.zipCode = zipCode;
    }

    // Method to return the full address as a string
    public string GetFullAddress()
    {
        return $"{street}, {city}, {zipCode}";
    }
}

//Archivo Program.cs (Main Program)
// Main program to test the Person and Address classes
using System;

class Program
{
    static void Main()
    {
        // Create an Address object with sample data
        Address address = new Address("123 Main St", "Springfield", "12345");

        // Create a Person object with the name and the created address
        Person person = new Person("John Doe", address);

        // Call the Introduce method for the person, which will display their name and address
        person.Introduce();
    }
}

 Output

Hello, my name is John Doe. I live at 123 Main St, Springfield, 12345.

Comparte este ejercicio de C#

Practica más ejercicios C# de Programación orientada a objetos en C#

¡Explora nuestro conjunto de ejercicios de práctica de C#! Diseñados específicamente para principiantes, estos ejercicios te ayudarán a desarrollar una sólida comprensión de los fundamentos de C#. Desde variables y tipos de datos hasta estructuras de control y funciones simples, cada ejercicio está diseñado para desafiarte gradualmente a medida que adquieres confianza en la programación en C#..