Jak mogę utworzyć podklasę NSInputStream?
Chciałbym utworzyć podklasę NSInputStream. Po prostu próbowałem kodować w następujący sposób:
<code>@interface SeekableInputStream : NSInputStream { NSUInteger startOffset; NSUInteger totalReadLen; } - (NSInteger)read:(uint8_t *)buffer maxLength:(NSUInteger)len; - (BOOL)getBuffer:(uint8_t **)buffer length:(NSUInteger *)len; - (BOOL)hasBytesAvailable; - (void)open:(NSUInteger)offset; @end </code>
i użyłem tej klasy jak poniżej.
<code>SeekableInputStream *stm = [[SeekableInputStream alloc] initWithURL:url]; </code>
Następnie w czasie wykonywania mogłem spełnić następujący komunikat o błędzie.
- [SeekableInputStream initWithURL:]: nierozpoznany selektor wysłany do instancji 0x10018ff30
Nie przesłoniłem initWithURL do celowego używania metody rodzica. W oparciu o moją wiedzę klasa pochodna może używać metody klasy macierzystej, prawda?
Nie można dziedziczyć metody rozszerzenia, takiej jak initWithURL?
Czy jest ktoś, kto informuje mnie, jak zrobić subclassing NSInputStream?