-
Data: 2012-07-05 21:01:33
Temat: Re: Co może robić konstruktor i dlaczego nie?
Od: "slawek" <h...@s...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Użytkownik "Michoo" napisał w wiadomości grup
dyskusyjnych:jt4hc2$trd$...@m...internetia.pl...
>> Odpowiedź oczywista: bo w trakcie działania ma tworzyć inne obiekty,
>> mające referencje do pól, a w szczególności do jego this.
>To nie jest problem, bo obiekt jest na etapie konstruktora już
>zainicjowany.
Michoo, wygląda na to że pogubiły się cytowania. Spróbuję uporządkować.
Ja twierdzę, że obiektu foo klasy Foo - niezależnie czy ma czy nie metodę
run() -- NIE DA SIĘ zastąpić wywołaniem nie-obiektowej funkcji
foofunc();
Uzasadniam: obiekt foo klasy Foo to nie tylko jego metoda run() (oraz ew.
jego konstruktor, lecz przecież dyskutowaliśmy o scaleniu run() z
konstruktorem). Obiekt klasy Foo to także wszystkie dane w polach obiektu,
ze szczególnym zwróceniem uwagi na te publiczne. Przykładowo nie jest tym
samym:
class Foo { public int n; int run() { return n++; } } ; // klasa
int foofunc() {return n++; } // funkcja
bo w drugim przypadku brak definicji n i jest to nietrywialne (nie da się
zastąpić deklaracją globalną int n; bo może istnieć wiele obiektów klasy
Foo, co nijak nie przekłada się na "wiele globalnych definicji int n").
PODSUMOWUJĄC - obiektowe podejście niekoniecznie jest zawsze najlepsze,
ale... jak już są obiekty, to nie ma na co marudzić.
slawek
--- Posted via news://freenews.netfront.net/ - Complaints to n...@n...net ---
Następne wpisy z tego wątku
- 05.07.12 22:34 Edek Pienkowski
- 05.07.12 23:30 slawek
- 05.07.12 23:45 Edek Pienkowski
- 05.07.12 09:37 Edek Pienkowski
- 06.07.12 08:17 slawek
- 06.07.12 09:09 Edek Pienkowski
- 06.07.12 10:59 AK
- 06.07.12 11:01 Paweł Kierski
- 06.07.12 11:10 Andrzej Jarzabek
- 06.07.12 12:59 Paweł Kierski
- 06.07.12 13:27 Jacek
- 06.07.12 13:50 Edek Pienkowski
- 06.07.12 13:42 AK
- 06.07.12 15:08 Paweł Kierski
- 06.07.12 15:24 AK
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-02-04 podpisywanie umów z datą wsteczną
- 2025-02-04 Radio internetowe do starego Androida
- 2025-02-04 "ogrodowa linia napowietrzna"
- 2025-02-04 Warszawa => Senior Account Manager <=
- 2025-02-03 Awaria BNP Paribas
- 2025-02-03 kryminalni i dochodzeniowcy
- 2025-02-03 Szczecin => Senior Field Sales (system ERP) <=
- 2025-02-03 Bydgoszcz => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-02-03 jaki zasilacz laboratoryjny
- 2025-02-03 jaki zasilacz laboratoryjny
- 2025-02-03 Puszka w ziemię
- 2025-02-03 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2025-02-03 Kraków => Programista Full Stack .Net <=
- 2025-02-03 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-02-03 Bez żadnego trybu