zadanie
unknown
objectivec
3 years ago
2.9 kB
18
Indexable
Stwórz nową klasę o nazwie Klasa.
Następnie wykorzystaj trzy załączone do tego zadania pliki
klasa.h zawiera obszernie skomentowany kod z definicją interfejsu klasy Klasa
klasa.m zawiera implementację klasy Klasa
main.m zawiera kod źródłowy funkcji głównej main
Dodaj kolejną klasę Data zawierającą 3 prywatne pola: dzien (int), miesiac (NSString)
i rok (int). Klasa ma zawierać metody dostępu do wszystkich pól. Dodatkowo napisz dwie
metody z dwoma i trzema parametrami do ustawiania wartości pól na raz. Następnie
napisz metodę wypisującą datę zapisaną w obiekcie w logach.
Zmodyfikuj funkcję main, by zaprezentować wszystkie możliwości nowej klasy.
Przygotuj podobną klasę reprezentującą osobę o określonym imieniu, nazwisku, miejscu
zamieszkania (adres, miasto, województwo – tylko określone wartości możliwe) i dacie
urodzenia.
Zmodyfikuj funkcję main by przedstawić wszystkie możliwości klasy reprezentującej
osobę
__________________________________________________________________________________________________________________
#import "Klasa.h"
#import <Foundation/Foundation.h>
@interface Klasa : NSObject {
@private NSString *jakisNapis;
@private int liczba;
}
@property(assign) int liczba;
@property(retain) NSString * jakisNapis;
- (void)metodaBezParametrow;
+ (int)metodaJakbyStatycznaZwracajacaLiczbeCalkowita;
- (void)metodaZJednymParametrem:(NSString *)napis;
- (void)metodaZParmetremPierwszym:(int)param1 iParametremDrugim:(int)param2;
@end
__________________________________________________________________________________________________________________
#import "Klasa.h"
@implementation Klasa
@synthesize liczba;
@synthesize jakisNapis;
- (void)metodaBezParametrow {
NSLog(@"Jakis komunikat w logach!");
}
+ (int)metodaJakbyStatycznaZwracajacaLiczbeCalkowita {
NSLog(@"Metoda wywolana na klasie");
return 6;
}
- (void)metodaZJednymParametrem:(NSString *)napis {
NSLog(@"Napis: %@", napis);
[self metodaBezParametrow];
[self metodaZParmetremPierwszym:2 iParametremDrugim:3];
}
- (void)metodaZParmetremPierwszym:(int)param1 iParametremDrugim:(int)param2 {
int a=param1+param2;
NSLog(@"wywolanie metody z dwoma parametrami");
}
@end
__________________________________________________________________________________________________________________
#import <Foundation/Foundation.h>
#import "Klasa.h"
int main (int argc, const char * argv[])
{
NSLog (@"hello world");
Klasa * obiekt= [[Klasa alloc] init];
[obiekt setLiczba:5];
NSLog (@"Liczba w naszym obiekcie to %i", [obiekt liczba]);
obiekt.liczba=2;
NSLog (@"Zmienilismy liczbe na %i", [obiekt liczba]);
NSLog (@"wartoszzwrocona przez metode %i", [[Klasa class] metodaJakbyStatycznaZwracajacaLiczbeCalkowita]);
[obiekt metodaZJednymParametrem:@"parametr"];
return 0;
}
Editor is loading...