>#import "Person.h"
>@implementation Person
>+ (CGFloat) maximumHeightInCentimeters{
>return 250.0f;
>}
>+ (CGFloat) minimumHeightInCentimeters{
>return 40.0f;
>}
>@end
Метод maximumHeightInCentimeters – это метод класса, возвращающий гипотетический максимальный рост любого персонажа в сантиметрах. Метод класса minimumHeightInCentimeters возвращает минимальный рост любого персонажа. Вот как мы предоставим оба этих метода в файле интерфейса нашего класса:
>#import
>@interface Person: NSObject
>@property (nonatomic, copy) NSString *firstName;
>@property (nonatomic, copy) NSString *lastName;
>@property (nonatomic, assign) CGFloat currentHeight;
>+ (CGFloat) maximumHeightInCentimeters;
>+ (CGFloat) minimumHeightInCentimeters;
>@end
Мы добавили к нашему классу Person еще одно свойство, принимающее значения с плавающей точкой. Оно называется currentHeight. С его помощью экземпляры этого класса могут хранить информацию о своей высоте в памяти (для справки) – точно так же, как имя и фамилию.
А в делегате нашего приложения мы продолжим работать с методами вот так:
>– (BOOL) application:(UIApplication *)application
>didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
>Person *steveJobs = [[Person alloc] init];
>steveJobs.firstName = @"Steve";
>steveJobs.lastName = @"Jobs";
>steveJobs.currentHeight = 175.0f; /* Сантиметры */
>if (steveJobs.currentHeight >= [Person minimumHeightInCentimeters] &&
>steveJobs.currentHeight <= [Person maximumHeightInCentimeters]){
>/* Высота этого персонажа находится в пределах допустимого */
>} else {
>/* Высота этого персонажа находится вне пределов допустимого */
>}
>self.window = [[UIWindow alloc]
>initWithFrame: [[UIScreen mainScreen] bounds]];
>self.window.backgroundColor = [UIColor whiteColor];
>[self.window makeKeyAndVisible];
>return YES;
>}
Соблюдение требований, предъявляемых другими классами, с помощью протоколов
В языке Objective-C существует концепция под названием «протокол». Протоколы встречаются и во многих других языках, но называются везде по-разному; например, в Java аналогичная сущность называется «интерфейс». Как понятно из названия, протокол – это набор правил, которым класс должен соответствовать, чтобы его можно было использовать тем или иным образом. Если класс выполняет правила определенного протокола, то принято говорить, что он