A toString felüldefiniálása

Filed Under (kód) by nameless on 23-07-2009

Tagged Under :

A System.Object.ToString() felüldefiniálása

using System;
 
namespace Program
{
    class Person 
    {
        public string fName;
        public string lName;
        public sbyte personAge;
 
        public Person(string firstName, string lastName, byte age)
        {
            fName = firstName;
            lName = lastName;
            personAge =(sbyte) age;
        }
        public Person() { }
 
        //fölülírjuk a ToStringet
        public override string ToString()
        {
            string myState;
            myState = String.Format("[First Name: {0}; Last Name: {1}; Age: {2}]", fName, lName, personAge);
            return myState;
        }
    }
 
    class EntryPoint
    {
        public static void Main()
        {
            var p1 = new Person("Ruud","Vannistelrooy",37);
 
            Console.WriteLine("ToString: {0}", p1.ToString()); //Az íródik ki, amivel felülírtuk a toStringet...
            Console.WriteLine("Hash code: {0}", p1.GetHashCode());
            Console.WriteLine("Type: {0}", p1.GetType());
 
            Person p2 = p1;
            object o = p2;
 
            //Az equals megviszgálja, hogy az értékek ugyan arra a memóriahelyre hivatkoznak-e és ha igen true-val térnek vissza
            if (o.Equals(p1) && p2.Equals(o))
            {
                Console.WriteLine("Same instance!");
            }
            Console.WriteLine();
 
            Console.ReadKey();
        }
    }
}

Post a comment