Objective-C
From Wikipedia, the free encyclopedia
Remove ads
Objective-C (ofte forkortet Obj-C) er et objektorientert programmeringsspråk som er realisert som en utvidelse av ANSI C. Det anvendes fremfor alt i programmeringsmiljøene Cocoa (Mac OS X) og GNUstep, som begge to er realiseringer av OpenStep-standarden.
Referanseløs: Denne artikkelen inneholder en liste over kilder, litteratur eller eksterne lenker, men enkeltopplysninger lar seg ikke verifisere fordi det mangler konkrete kildehenvisninger i form av fotnotebaserte referanser. Du kan hjelpe til med å sjekke opplysningene mot kildemateriale og legge inn referanser. Opplysninger uten kildehenvisning i form av referanser kan bli fjernet. |
Remove ads
Remove ads
Beskrivelse
Objective C er en svært liten utvidelse av C. Det finnes bare et tillegg av syntaks og omtrent ti nye kodeord. Sånn sett er det veldig enkelt å lære om man kjenner til C.
Meldinger
Objektorienterte programmer er bygd opp av objekter som sender hverandre meldinger (anvisninger) og utfører metoder. Meldinger i Objective-C baserer seg på Smalltalk og ser ut på følgende måte:
[objekt metode]
for eksempel:
textLengde = [@"Hello World!" length]; // tekstobjektet "Hello World!" skal kjøre metoden "length"
meldinger kan pakkes i hverandre og gis argumenter etter kolon:
[resultat setFloatValue: [beløp floatValue]*[antall floatValue]];
Klasser
For å skape objekter av sin egen type bør man beskrive den i en såkalt klasse. Det består av en interface-del som inneholder statusen og evnene objektene av klassens type har, dvs. interfacen deklarerer variablene og metodene sine:
#import <objc/Object.h>
@interface Lampe : Object {
BOOL lyser; // statusen
}
– (BOOL)lyser; // evnen: svar om lyser
– (void)settLyser:(BOOL)nyeStatus;
– (id)init; // sett startstatus
@end
og en implementation som beskriver hvordan evnene skal utføres:
@implementation Lampe
– (BOOL) lyser {
return lyser; // returner variablen (som lever i en annen navnrom enn metodene)
}
– (void)settLyser: (BOOL) nyeStatus {
lyser = nyeStatus;
}
– (id)init {
if (self = [super init]) {
[self settLyser:NO]:
}
return self;
}
@end
Nye objekter kan nå bygges idet man sender meldingen om å utføre metoden «alloc» til klassen. Klasser er også spesielle objekter med metoder. Klassen over kan for eksempel brukes slik:
#include <stdio.h> // bruk normale C-inn-/utgave i eksemplet
main () {
id objektet; // id mener "et eller annet objekt"
objektet = [[[Lampe alloc] init] settLyser: YES]; // kompleks pakking av meldinene
printf ("Lampen i variablen \"objektet\" %s.", [objektet lyser]?"lyser":"lyser ikke");
}
Remove ads
Eksterne lenker
- (en) Offisielt nettsted
- (en) Objective-C – kategori av bilder, video eller lyd på Commons
- The Objective-C Programming Language
- https://web.archive.org/web/20060209162029/http://www.dekorte.com/Objective-C/
- Objective-C kurs for nybegynnere
Denne artikkelen er en spire. Du kan hjelpe Wikipedia ved å utvide den.
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads