private Felga UtworzNowaFelgeSparco(CzujnikCisnienia czujnikCisnienia)
        {
            var f = new Felga("Sparco")
            {
                CzujnikCisnienia = czujnikCisnienia,
            };

            return(f);
        }
        public void PropertyDalszeWyjasnienia()
        {
            var k1 = new Kolo()
            {
                Felga = UtworzNowaFelgeSparco_Z_CzujnikiemCisnienia(),
                Opona = new Opona(TypOpony.Zimowa),
            };
            var k2 = new Kolo()
            {
                Felga = UtworzNowaFelgeSparco_Z_CzujnikiemCisnienia(),
                Opona = new Opona(TypOpony.Zimowa),
            };
            var k3 = new Kolo()
            {
                Felga = UtworzNowaFelgeSparco_BEZ_CzujnikaCisnienia(),
                Opona = new Opona(TypOpony.Zimowa),
            };
            var k4 = new Kolo()
            {
                Felga = UtworzNowaFelgeSparco_BEZ_CzujnikaCisnienia(),
                Opona = new Opona(TypOpony.Zimowa),
            };

            var fel1 = new Felga();

            fel1.Marka = "Ronal";

            var mmmm = fel1.Marka;

            var fel2 = new Felga("Ronal");

            var samochod = new Samochod();

            samochod.KoloPrzednieLewe  = k1;
            samochod.KoloPrzedniePrawe = k2;
            samochod.KoloTylneLewe     = k3;
            samochod.KoloTylnePrawe    = k4;

            // I teraz możemy się odwoływać do tych zagnieżdżonych property:

            bool     czyCzujnikWPrawymPrzednimKoleJestSprawny = samochod.KoloPrzedniePrawe.Felga.CzujnikCisnienia.CzyJestSprawny;
            bool     czySamochodMaZalozoneTylneLeweKolo       = samochod.KoloTylneLewe != null;
            string   markaFelgiNaPrawymTylnymKole             = samochod.KoloTylnePrawe.Felga.Marka;
            TypOpony typOponyNaLewymPrzednimKole            = samochod.KoloPrzednieLewe.Opona.Typ;
            string   typOponyNaLPJakoStringWielkimiLiterami = samochod.KoloPrzednieLewe.Opona.Typ.ToString().ToUpper();
            int      dlugoscNazwyTypuOponyNaLP = samochod.KoloPrzednieLewe.Opona.Typ.ToString().Length;

            // Czyli podsumowując powyższe - każde property zwraca obiekt jakiegoś typu - nie ważne czy to będzie obiekt Twojego typu/klasy czy to będzie obiekt jakiejś klasy od Microsoftu (np. TimeSpan).
            // I ten zwracany typ ma swoje property, które zwraca obiekt innego typu, który znowu ma swoje property i tak dalej, i tak dalej



            // Zerknij poniżej jak te klasy są popisane. Jest tam parę ciekawostek. Np. enum, albo konstruktory z parametrami, albo konstruktor bez parametrów, który coś tam inicjalizuje.
        }