Gå til indholdet

N230 Auto egenskab (Person)

Du skal skabe en tom konsol app med en klasse Person med følgende medlemmer:

  • En egenskab kaldet Fornavn (implementeret som en automatisk egenskab – brug ”prop” + tab)
  • En egenskab kaldet Efternavn (fuld egenskab med et privat felt kaldet efternavn – brug ”propfull+tab). Når der tildeles skal efternavn være større end 3 tegn – ellers sæt efternavn til ””
  • En metode kaldet FuldtNavn som returnerer Fornavn + ” ” + Efternavn. Overvej om det bør være en egenskab i stedet? Hvad er forskellen?

Brug klassen i Main ved at skabe et objekt med new og test at det virker.

Klik for at se et forslag til en løsning
using System;

namespace ConsoleApplication6
{

    class Program
    {
        static void Main(string[] args)
        {
            Person p = new Person();
            p.Fornavn = "Mikkel";
            p.Efternavn = "Cronberg";
            Console.WriteLine(p.FuldtNavn());

            // Hold console åben ved debug (kun nødvendigt ved .NET Framework - ikke .NET Core)
            if (System.Diagnostics.Debugger.IsAttached)
            {
                Console.Write("Press any key to continue . . . ");
                Console.ReadKey();
            }
        }
    }

    class Person
    {
        public string Fornavn { get; set; }
        private string efternavn;

        public string Efternavn
        {
            get { return efternavn; }
            set
            {
                if (value.Length < 3)
                {
                    efternavn = "";
                }
                else
                {
                    efternavn = value;
                }
            }
        }

        public string FuldtNavn()
        {
            return Fornavn + " " + Efternavn;
        }

        // public string FuldtNavn
        // {
        //    get 
        //    {
        //        return Fornavn + " " + Efternavn;
        //    }
        // }
    }

}