190 likes | 318 Vues
Objekter og klasser. Rasmus D. Lehrmann DM67 2010. Indhold. Hvad er et objekt? Hvad er en klasse? Attributter Metoder Konstruktør Klasse opbygning Metode opbygning Nedarvning UML nedarvning Abstrakt klasse Singleton Composite pattern Observer Opsummering. Hvad er et objekt?.
E N D
Objekter og klasser Rasmus D. Lehrmann DM67 2010
Indhold • Hvad er et objekt? • Hvad er en klasse? • Attributter • Metoder • Konstruktør • Klasse opbygning • Metode opbygning • Nedarvning • UML nedarvning • Abstrakt klasse • Singleton • Compositepattern • Observer • Opsummering
Hvad er et objekt? • Tilbyder en række metoder • Indeholder utilgængeligt data • Informationen kan tilgås igennem metoderne • Objekter er dynamiske, og eksisterer kun i runtime.
Definition af objekt En repræsentation af et koncept fra virkeligheden, realiseret vha. data knyttet til dette koncept samt en række funktioner gennem hvilke objektet kan ændre eller aflæse egne data
Hvad er en klasse? • Definerer indholdet af: • objekter • metoder • variabler • Klasser er statiske, eksisterer kun i compileren
Definition af klasse En type, som definerer de data og funktioner der er nødvendige for at beskrive en gruppe af objekter som alle repræsenterer samme koncept fra virkeligheden
Attributter • Attributterne definerer de data vi ønsker at registrere. Attributterne defineres i klassen, og bliver tildelt en konkret værdi i objekterne • Eks på en konto attributter • Kontonummer, saldo
Metoder • Metoder tilføjes til et objektet fra klassen for at give det funktionalitet. • Et metode kald kan få objektet til at ændre tilstand: • UdskrivKontoer(), Indset(…) osv
Konstruktør • Konstruktøren er en bestemt metode, som skal have samme navn som klassen. Konstruktørens opgave er at initialisere objektet under oprettelse. • public CtrSaldo() • { • Kontoer = new ArrayList(); • } • New opretter objektet i hukommelsen
Klasse opbygning • En klasse opbygges efter en skabelonen: • class Klassenavn • { • dataerklæringer • constructors • properties • metoder • }
Metode opbygning • En Metode opbygges efter en skabelonen: • accessmodifier returtype Metodenavn (parameterliste) • { • sætninger • }
Nedarvning • Metoder kan nedarves fra andre klasser • C# arver fra Object klassen • Kodegenbrug • Videreudvikling • Klassen der arver kaldes Superklasse • Klassen der arves fra kaldes Subklasser
Abstrakt klasse • Indeholder ikke definerede metoder • Kan ikke oprette objekter • Abstrakte metoder arvet til andre klasser skal redefineres • Abstrakt metode definerer funktionalitet • Ikke implementeret
Singleton • Initialisering af objekter i begrænset mængder • Øget funktionalitet da overflødige objekter ikke bliver oprettet
Compositepattern • Gør det muligt at behandle en række objekter som en instans af et objekt • Anvendes ved gentagelse af den samme kode eller funktion
Observer Observer pattern bruges til at se efter tilstands ændringer, og informerer sine pårørende • Subject: Holder øje med ændringer og hvem den skal informer om disse ændringer • Observer: Er et objekt der bliver informeret om ændringer
Opsummering Objekter og klasser • Hvad et objekt er • Hvad en klasse er • Hvordan et program er opbygget • Dette giver os muligheden for at opbygger et c-sharpprogram efter de grammatiske regler der findes i c-sharp