
Kapitel 2 - Fortsetzung
In dem Beispiel, welches Sie gleich schreiben werden, geht es um das arbeiten mit Brüchen. Solche Brüche sind 1/2, 1/3, 5/8..usw. Die erste Zahl wird immer Zähler genannt, die zweite Zahl ist der Nenner. Tippen Sie folgendes Programm ein, eine Zeile-für-Zeile Erklärung erfolgt wie immer im Anschluss.
Programm 2.1
//
// main.m
// prog2_1
//
// Created by infobliss.at on 28.07.06.
// Copyright __MyCompanyName__ 2006. All rights reserved.
//
#import <stdio.h>
#import <objc/Object.h>
// ------- @interface Abschnitt ----------
@interface Bruch: Object
{
int zaehler;
int nenner;
}
- (void) ausdrucken;
- (void) setzeZaehler: (int) z;
- (void) setzeNenner: (int) n;
@end
// ---------------- @implementation Abschnitt ----------------
@implementation Bruch;
-(void) ausdrucken
{
printf (" %i/%i ", zaehler, nenner);
}
-(void) setzeZaehler: (int) z
{
zaehler = z;
}
-(void) setzeNenner: (int) n
{
nenner = n;
}
@end
// ----Programm Abschnitt------
int main (int argc, char *argv[])
{
Bruch *meinBruch;
// Bildung einer Instanz
meinBruch = [Bruch alloc];
meinBruch = [meinBruch init];
// Setzen von Zähler und Nenner
[meinBruch setzeZaehler: 1];
[meinBruch setzeNenner: 2];
// Anzeigen des Bruchs via printf
printf ("Der Wert von meinBruch ist:");
[meinBruch ausdrucken];
printf ("\n");
[meinBruch free];
return 0;
}
-----------------------------------------------------------------------------------------------------------------
Programm 2.1 output
-----------------------------------------------------------------------------------------------------------------
Der Wert von meinBruch ist: 1/2
-----------------------------------------------------------------------------------------------------------------
„Na ja“, werden Sie jetzt wohl sagen, das Ergebnis hätte ich auch einfacher haben können. Nun, das mag stimmen, aber dieses Programm könnten Sie jetzt beliebig erweitern. Falls Sie mit mehreren Brüchen arbeiten wollen, könnten Sie immer auf dasselbe Grundgerüst zurückgreifen; Sie könnten mit diesen Brüchen Additionen, Subtraktionen, Multiplikationen ...usw ausführen. Klarer wird’s dann aber in Kürze, wenn Sie das erste richtige Programm schreiben werden. Zu Ihrer Beruhigung kann ich Ihnen sagen, dass Xcode einen großen Teil der Programmierarbeit, die Sie gerade oben geleistet haben, abnehmen wird.
Was haben Sie also wieder getan? Wenn Sie sich das Programm anschauen dann haben Sie das Programm in drei Abschnitte geteilt:
@interface Abschnitt
@implementation Abschnitt
Programm Abschnitt
Der @interface Abschnitt beschreibt die Klasse, die darin enthaltenen Daten (Attribute) und Ihre Methoden (Funktionen). Sie erinnern sich, jede Klasse besteht aus Attributen und Methoden. Der @implementation Abschnitt beinhaltet die Information für das Ausführen der Methoden. Implementieren bedeutet soviel wie Inkraftsetzen. Der Programm Abschnitt beinhaltet dann noch den eigentlichen Code zum Ausführen des Programmes. Verfolgen wir z.B. die Methode ausdrucken im Beispiel: im @interface Abschnitt haben Sie angegeben, dass Ihr Objekt die Funktion „ausdrucken des Ergebnisses am Bildschirm“ haben soll. Im @implementation Abschnitt haben Sie angegeben, dass dies Mittels des printf Befehls zu erfolgen hat, und im Programm Abschnitt haben Sie angegeben, was alles denn nun konkret ausgedruckt werden soll. Im @interface Abschnitt haben Sie somit Deklarationen durchgeführt, im @implementation Abschnitt haben Sie Definitionen durchgeführt. Wenn Sie sich erinnern, zu Beginn habe ich im Zusammenhang mit einer Funktion einmal die Worte Definitionen und Deklarationen verwendet, jetzt verstehen Sie wahrscheinlich besser was damit gemeint ist. Jeder dieser drei genannten Abschnitte ist Teil eines jeden Objective-C Programms, auch wenn Sie – wie bereits erwähnt – nicht immer alles selber schreiben und programmieren müssen, weil Xcode ein Teil für Sie übernimmt. Blicken wir nun auf die einzelnen Abschnitte.
weiter ---- Objective-C Index ---- Startseite----zurück
EINSTIEG
KAPITEL 1: SCHRITT FÜR SCHRITT ZUM ERSTEN PROGRAMM
KAPITEL 2: OBJEKTE, KLASSEN, INSTANZEN UND METHODEN
KAPITEL 3: DIE VERSCHIEDENEN DATENTYPEN
KAPITEL 4: DIE PROGRAMMSCHLEIFEN
KAPITEL 5: ENTSCHEIDE DICH, ENTWEDER ODER....
KAPITEL 6: UND NOCHMALS KLASSEN
KAPITEL 7: VERERBUNG
KAPITEL 8: POLYMORPHISMUS, DYNASCHISCHE TYPISIERUNG UND DYNAMISCHES BINDEN
KAPITEL 9: NOCH MEHR DATENTYPEN UND VARIABLEN
KAPITEL 10: CATEGORIES, POSING AND PROTOCOL
KAPITEL 11: DER PRÄPROZESSOR