klasy a optymalizacja

0

wiem ze bede mial bardzo duzo obiektow danej klasy (ponad 100)
klasa ma w sobie duzo roznych metod

czy jest jakas roznica w opytmalnosci
dzialania programu miedzy nastepujacymi rozwiazaniami:

  1. klasa ma swoje metody (kazdy obiekt je powiela) i sama sobie wszystko wylicza
  2. Klasa ma tylko niezbedne metody a wiekszosc metod jest gdzies na zewnatrz i wywolywane sa z potrzebnymi parametrami.

hm?

0

o ile się orientuję, metody nie są powielane. Każda instancja trzyma jedynie wskaźnik do metody, a nie całą kopię kodu. Różnica jest pomiędzy metodami statycznymi a wirtualnymi - adresy tych pierwszych są znane podczas kompilacji, tych drugich - wyliczane podczas działania programu. Deklarowanie metod "na zewnątrz" klasy kłóci się trochę z ideą programowania obiektowego.

0

Dokłądnie Luc. Dla danej klasy istnieje tylko po jednym egzemplarzu danej metody, do którego mają dostęp wszystkie instancje. Tylko pola danych są powielane dla każdej instancji.

0

ok.
dzieki za rozwianie watpliwosci

1 użytkowników online, w tym zalogowanych: 0, gości: 1