4.12 Lösung: Zusätzliche Initialisierung

Wir nehmen die folgende Deklaration in die Greeter-Header-Datei auf, weil wir das Public Interface um eine neue Initialisierungsmethode erweitern:

Classes/HelloWorld11/Greeter.h

    #import <Cocoa/Cocoa.h>

    @interface Greeter : NSObject {
       NSString * name;
    }
    -(NSString *) greeting;
▸  -(id) initWithName:(NSString *)newName;
    @end

In Greeter.m nehmen wir diese Methode auf:

Classes/HelloWorld11/Greeter.m

-(id) initWithName:(NSString *) newName {
    if (self =[super init]){
        name = newName;
    }
    return self;
}

Sobald Sie im nächsten Kapitel etwas über Eigenschaften (properties) gelernt haben, werden Sie etwas Robusteres verwenden als

name = newName;

Sie werden nämlich eine Eigenschaft nutzen, um den Wert von name festzulegen und ...

Get Cocoa-Programmierung now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.