static void Main(string[] args)
        {
            MojaKlasa mk1 = new MojaKlasa();
            MojaKlasa mk2 = mk1;
            MojaKlasa mk3 = new MojaKlasa();

            // metoda ToString
            Console.WriteLine(mk1.ToString());
            Console.WriteLine(mk2.ToString());
            Console.WriteLine(mk3.ToString());

            // metoda GetType
            Console.WriteLine(mk1.GetType());
            Console.WriteLine(mk2.GetType());
            Console.WriteLine(mk2.GetType());
            var t = mk1.GetType();

            // metoda GetHashCode
            Console.WriteLine(mk1.GetHashCode());
            Console.WriteLine(mk2.GetHashCode());
            Console.WriteLine(mk2.GetHashCode());

            // metoda Equals
            Console.WriteLine(mk1.Equals(mk1));
            Console.WriteLine(mk1.Equals(mk2));
            Console.WriteLine(mk1.Equals(mk3));

            // TODO: ispise pohraniti u datoteku SystemObjects.txt priloženu projektu te u njoj obrazložiti rezultate za svaku metodu!

            Console.ReadKey();
        }
        static void Main(string[] args)
        {
            MojaKlasa mk1 = new MojaKlasa();
            MojaKlasa mk2 = null;

            //  Usporediti objekte mk1 i mk2 korištenjem statičke metode MojaKlasa.Equals te ispisati rezultat
            Console.WriteLine(mk1.Equals(mk2));
            Console.WriteLine(MojaKlasa.Equals(mk1,mk2));

            //  Usporediti objekte mk1 i mk2 pozivom metode mk1.Equals te ispisati rezultat
            Console.WriteLine(mk1.Equals(mk2));

            //  Usporediti objekte mk1 i mk2 pozivom metode mk2.Equals te ispisati rezultat
               //Console.WriteLine(mk2.Equals(mk1)); ne može se izvršit
            //  Storiti dvije strukture ms1 i ms2 na isti način kao i za gornje instance klasa mk1 i mk2
            MojaStruktura ms1 = new MojaStruktura();
            MojaStruktura ms2 = ms1;

            //  Usporediti objekte ms1 i ms2 korištenjem statičke metode MojaStruktura.Equals te ispisati rezultat
            Console.WriteLine(MojaStruktura.Equals(ms1, ms2));

            //  Usporediti objekte ms1 i ms2 pozivom metode ms1.Equals te ispisati rezultat
            Console.WriteLine(ms2.Equals( ms1));

            //  Usporediti objekte ms1 i ms2 pozivom metode ms2.Equals te ispisati rezultat
            Console.WriteLine(ms1.Equals(ms2));

            //  Ispis prekopirati u datoteku Equals.txt pridruženu ovom projektu te obrazložite svaki rezultat

            Console.ReadKey();
        }
        static void Main(string[] args)
        {
            MojaKlasa mk1 = new MojaKlasa();
            MojaKlasa mk2 = null;

            // Usporediti objekte mk1 i mk2 korištenjem statičke metode MojaKlasa.Equals te ispisati rezultat
            Console.WriteLine(mk1.Equals(mk2));// uspoređujemo s ne postojoćom adresom

            // Usporediti objekte mk1 i mk2 pozivom metode mk1.Equals te ispisati rezultat
            Console.WriteLine(MojaKlasa.Equals(mk1, mk2));//koristi se kod overideanja

            // Usporediti objekte mk1 i mk2 pozivom metode mk2.Equals te ispisati rezultat
            //Console.WriteLine(mk2.Equals(mk1));// null refernce exception

            // Storiti dvije strukture ms1 i ms2 na isti način kao i za gornje instance klasa mk1 i mk2
            MojaStruktura ms1 = new MojaStruktura();
            //MojaStruktura ms2 = null;//nemože
            MojaStruktura ms2 = ms1;
            //Usporediti objekte ms1 i ms2 korištenjem statičke metode MojaStruktura.Equals te ispisati rezultat
            Console.WriteLine(MojaStruktura.Equals(ms1, ms2)); //radi usporedbu po sadržaju

            //Usporediti objekte ms1 i ms2 pozivom metode ms1.Equals te ispisati rezultat
            Console.WriteLine(ms1.Equals(ms2));

            //Usporediti objekte ms1 i ms2 pozivom metode ms2.Equals te ispisati rezultat
            Console.WriteLine(ms2.Equals(ms1));

            //Ispis prekopirati u datoteku Equals.txt pridruženu ovom projektu te obrazložite svaki rezultat

            Console.ReadKey();
        }
        static void Main(string[] args)
        {
            MojaKlasa mk1 = new MojaKlasa();
            MojaKlasa mk2 = mk1;
            MojaKlasa mk3 = new MojaKlasa();

            // metoda ToString
            // za svaki objekt pozvati njegovu metodu ToString i ispisati na konzolu ono što ona vraća
            Console.WriteLine(mk1);//za mk1->implicitno će pozvati tostring
            Console.WriteLine(mk2.ToString());
            Console.WriteLine(mk3.ToString());

            // metoda GetType
            // za svaki objekt pozvati njegovu metodu GetType i ispisati na konzolu ono što ona vraća
            Console.WriteLine(mk1.GetType());
            Console.WriteLine(mk2.GetType());
            Console.WriteLine(mk3.GetType());

            // metoda GetHashCode
            //za svaki objekt pozvati njegovu metodu GetHashCode i ispisati na konzolu ono što ona vraća
            Console.WriteLine(mk1.GetHashCode());//vraća šifru za svaki objekt
            Console.WriteLine(mk2.GetHashCode());//ako se nalazi na istoj adresi
            Console.WriteLine(mk3.GetHashCode());

            // metoda Equals
            //za svaki objekt pozvati njegovu metodu Equals i usporedbu napraviti sa svim ostalim objektima te ispisati na konzolu ono što ona vraća
            Console.WriteLine(mk1.Equals(mk2));
            Console.WriteLine(mk1.Equals(mk3));
            Console.WriteLine(mk2.Equals(mk1));
            Console.WriteLine(mk2.Equals(mk3));
            Console.WriteLine(mk3.Equals(mk1));
            Console.WriteLine(mk3.Equals(mk2));


            //ispise pohraniti u datoteku SystemObjects.txt priloženu projektu te u njoj obrazložiti rezultate za svaku metodu!


            Console.ReadKey();
        }