static void TestBrojaca2() { Instrument i1 = new Bubanj(); Instrument i2 = new Klavir(); Console.WriteLine("Brojac unutar metode: {0}", Instrument.brojac); i1 = null; i2 = null; System.GC.Collect(); }
static void TestA() { // TODO izbrisati Instrument bubanj = new Bubanj(); // Koriscenjem virtuelne metode koja je implementirana u svim klasama bubanj.Ispisi(); // Koriscenjem pomocne metode Osobine(bubanj); }
static void TestBrojaca() { Instrument i1 = new Bubanj(); Instrument i2 = new Viola(); Console.WriteLine("Brojac: {0}", Instrument.brojac); TestBrojaca2(); Console.WriteLine("Brojac posle metode: {0}", Instrument.brojac); // Evidentno je da ovaj nacin ne funkcionise kako je zamisljeno // Zbog sakupljanja smeca }
/// <summary> /// Sastavljam (mali) simfonijski orkestar. /// </summary> static Instrument[] SimfonijskiOrkestar() { // OSTAJE ZASAD KAO PRIMER KAKO NE TREBA // Cim sam napisao metodu za ucitavanje iz txt fajla // Postalo je neuporedivo lakse kreirati orkestar // Deklarisem instrumente // DUVACKI INSTRUMENTI // Drveni duvacki instrumenti Instrument flauta1 = new Flauta(); Instrument flauta2 = new Flauta(); Instrument saksofon = new Saksofon(); // Limeni duvacki instrumenti Instrument horna1 = new Horna(); Instrument horna2 = new Horna(); Instrument truba1 = new Truba(); Instrument truba2 = new Truba(); Instrument trombon1 = new Trombon(); Instrument trombon2 = new Trombon(); Instrument tuba = new Tuba(); // UDARACKI INSTRUMENTI Instrument timpan = new Timpani(); Instrument bubanj1 = new Bubanj(); Instrument bubanj2 = new Bubanj(); Instrument ksilofon = new Ksilofon(); // ZICANI INSTRUMENTI Instrument klavir = new Klavir(); Instrument harfa = new Harfa(); Instrument violina1 = new Violina(); Instrument violina2 = new Violina(); Instrument violina3 = new Violina(); Instrument violina4 = new Violina(); Instrument viola1 = new Viola(); Instrument viola2 = new Viola(); Instrument violoncelo1 = new Violoncelo(); Instrument violoncelo2 = new Violoncelo(); Instrument kontrabas = new Kontrabas(); // Dodajem svojstva iz IFunkcijaUOrkestru // Deklarisem niz i dodajem clanove return(null); }
static Instrument[] UcitajOrkestarTekst(string putanja) { // npr: StreamReader sr = null; string line; string[] data; Instrument instrument; Instrument[] nekiOrkestar; List <Instrument> lista = new List <Instrument>(); try { sr = new StreamReader(putanja); // Ucitaj ime orkestra, prvi red... string ime = sr.ReadLine(); while ((line = sr.ReadLine()) != null) { data = line.Split(','); // dovoljni su Ime instrumenta, MojaFunkcijaUOrkestru switch (data[0]) { // za svaki instrument poseban case case "Bubanj": { instrument = new Bubanj(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Flauta": { instrument = new Flauta(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Harfa": { instrument = new Harfa(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Horna": { instrument = new Horna(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Klavir": { instrument = new Klavir(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Kontrabas": { instrument = new Kontrabas(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Ksilofon": { instrument = new Ksilofon(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Saksofon": { instrument = new Saksofon(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Timpani": { instrument = new Timpani(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Trombon": { instrument = new Trombon(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Truba": { instrument = new Truba(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Tuba": { instrument = new Tuba(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Viola": { instrument = new Viola(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Violina": { instrument = new Violina(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } case "Violoncelo": { instrument = new Violoncelo(); IFunkcijaUOrkestru temp = instrument as IFunkcijaUOrkestru; temp.MojaFunkcijaUOrkestru = data[1]; temp.PripadamOrkestruPoImenu = ime; lista.Add(instrument); break; } default: { throw new Exception(); } } } nekiOrkestar = lista.ToArray(); } catch { Console.WriteLine("Neuspesno ucitavanje"); nekiOrkestar = null; } finally { if (sr != null) { sr.Close(); } } return(nekiOrkestar); }