-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: porneL <n...@p...net>
Newsgroups: pl.comp.programming
Subject: Re: [Objective-C] Enkapsulacja
Date: Tue, 03 Feb 2009 23:39:41 -0000
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 27
Message-ID: <o...@p...mshome.net>
References: <gmacvd$juh$1@inews.gazeta.pl>
NNTP-Posting-Host: nat2.g1.isko.net.pl
Mime-Version: 1.0
Content-Type: text/plain; format=flowed; delsp=yes; charset=iso-8859-2
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1233704383 795 213.199.198.226 (3 Feb 2009 23:39:43 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Tue, 3 Feb 2009 23:39:43 +0000 (UTC)
X-User: pornelspam
User-Agent: Opera Mail/10.00 (MacIntel)
Xref: news-archive.icm.edu.pl pl.comp.programming:180865
[ ukryj nagłówki ]On Tue, 03 Feb 2009 21:29:15 -0000, Tomek[TK] <t...@n...pl> wrote:
> Chcialbym przerobic powyzszy interfejs w taki sposob aby ukryc wszystkie
> metody interfejsu NSObject. Przede wszystkim nie chce dopuscic do tego,
> aby dozwolony byl zapis:
>
> A* obj = [[A alloc] init];
>
> tylko
>
> A* obj = [[A alloc] metodaInicjalizujaca];
>
>
> Bylbym wdzieczny za jakiekolwiek wskazowki.
Nadpisz init. Jeśli nie potrzebujesz parametrów, to sprawa załatwiona.
Jeśli parametry są niezbędne, to dobrze by było dopuścić ustawienie ich potem:
x = [[A alloc] init]
[x setFoo:foo]
W ostateczności możesz nadpisać init tak, żeby zwracał nil albo wyrzucał wyjątek,
jeżeli nie został wywołany z twojej alternatywy, ale to jest wbrew nieformalnemu
protokołowi nakazującemu, że wszystkie konstruktory mają odpalać self = [super init]
oraz wbrew relacji is-a, ponieważ z obiektem klasy NSObject nie będzie można robić
wszytkiego tego, co z NSObject (coś a'la circle-ellipse problem).
--
http://pornel.net
this.author = new Geek("porneL");
Następne wpisy z tego wątku
- 04.02.09 08:22 Tomasz Krzos
Najnowsze wątki z tej grupy
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- 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
Najnowsze wątki
- 2025-05-11 obca rejestracja budzi agresję
- 2025-05-11 Po nie udanej próbie egzekucji: Nigeryjczyk, który chciał zabić Polaka, nie odpowie za atak
- 2025-05-10 Szczecin => Key Account Manager IT <=
- 2025-05-10 Rudno => Administrator sieci IT <=
- 2025-05-10 Wrocław => Controlling systems Consultant <=
- 2025-05-10 Rudno => IT network administrator <=
- 2025-05-10 Warszawa => Customer Service with Spanish + translation <=
- 2025-05-10 Warszawa => Senior Account Manager <=
- 2025-05-10 Trójmiasto => Head of Social Media <=
- 2025-05-10 Warszawa => C Programmer <=
- 2025-05-10 Warszawa => Java Developer <=
- 2025-05-10 powąchaj instrybutor
- 2025-05-10 Prawomocny wyrok. Rowerzysta nie ma pierwszeństwa, dojeżdżając do przejazdu
- 2025-05-09 Propagation velocity v/c dla kabli RF
- 2025-05-09 Warszawa => Senior Node.js Developer (doświadczenie z framework Nest.