Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

Klasser og objekter. dIntProg, F08Klasser og objekter.2 Grundbegreber Klasser og objekter –beskrivelse –oprettelse Attributter og metoder –tilstand –opførsel.

Lignende præsentationer


Præsentationer af emnet: "Klasser og objekter. dIntProg, F08Klasser og objekter.2 Grundbegreber Klasser og objekter –beskrivelse –oprettelse Attributter og metoder –tilstand –opførsel."— Præsentationens transcript:

1 Klasser og objekter

2 dIntProg, F08Klasser og objekter.2 Grundbegreber Klasser og objekter –beskrivelse –oprettelse Attributter og metoder –tilstand –opførsel Indkapsling –afskærmning –datarepræsentationsuafhængighed

3 dIntProg, F08Klasser og objekter.3 Klasser og objekter

4 dIntProg, F08Klasser og objekter.4 Tilstand og opførsel Tilstand –ethvert objekt har sin egen tilstand Opførsel –objekters opførsel er defineret ved et sæt metoder –udførelse af en metode kan ændre et objekts tilstand –en metode kan have parametre; ved kald af metoden leveres et passende antal argumenter

5 dIntProg, F08Klasser og objekter.5 Klasse for begrebet aktør public class Actor { private String name; private int number; public Actor(String n) { name= n; antal= 0; } private void clapOnce() { number= number + 1; } public int noOfTricks() { return number; } } Opførsel Tilstand

6 dIntProg, F08Klasser og objekter.6 Tilstand Attribut (feltvariabel) –type –værdi Primitiv type –int, boolean,... –42, true,... Objekttype –String, Date, Skuespiller,... –””, (29, 8, 203), (”Ghita”, 7) Variabler –primitiv variabel: variabel der kan holde en værdi af den anførte type –objektreference: variabel der kan referere til et objekt af den anførte type name ”Ghita” number 7 Objekt-reference public class Actor { private int number; private String name;... } Primitiv variabel

7 dIntProg, F08Klasser og objekter.7 Et skuespillerobjekt skuespil1 (”Ghita”, 7) Actor skuespil1= new Actor(”Ghita”); skuespil1.turn(7);

8 dIntProg, F08Klasser og objekter.8 Et skuespillerobjekt skuespil1 (, 7) Actor skuespil1= new Actor(”Ghita”); skuespil1.turn(7); ”Ghita”

9 dIntProg, F08Klasser og objekter.9 Objektreferencer og objekter (1) anActor ( ”Ghita”, 7) Actor anActor; anActor= new Actor(”Ghita”); anActor.turn(7); anActor= new Actor(”Fritz”); anActor.clap(3); ( ”Fritz”, 3) anActor ( ”Ghita”, 7) Actor anActor; anActor= new Actor(”Ghita”); anActor.turn(7); anActor

10 dIntProg, F08Klasser og objekter.10 Objektreferencer og objekter (2) a ( ”Ghita”, 10) Actor a, b; a= new Actor(”Ghita”); a.turn(7); b= a; b.clap(3); Delte referencer b int a, b; a= 7; b= a; b= b + 1; a b 7 8

11 dIntProg, F08Klasser og objekter.11 Opførsel (metoder) Konstruktør –ingen returtype –samme navn som klassen Mutator (!) –opdaterer (del af) objektets tilstand Accessor/Inspector (?) –aflæser (del af) objektets tilstand Returtype –specificerer hvilken type værdi der returneres fra metoden (void  mutator) Parametre –type og navn –ved flere parametre adskilles med komma public class Actor { /** Opret en skuespiller * med navn n */ public Actor(String n) {... } /** Skuespilleren klapper **/ private void clapOnce() {... } /** Returnerer antal tricks * skuespilleren har lavet */ til dato public int noOfTricks() {... } }

12 dIntProg, F08Klasser og objekter.12 Afskærmning (synlighed) Attributter –objektets indkapslede tilstand –erklæres (oftest) private –kan kun tilgås fra klassens egne metoder Metoder –objektets facade (også kaldet grænseflade) til omverdenen –erklæres (oftest) public –kan tilgås fra alle andre klasser public class Actor { private String name; private int number; public Actor(String n) {... } private void clapOnce() {... } public void clap(int n) {... } public int noOfTricks() {... } }

13 dIntProg, F08Klasser og objekter.13 Syntaktiske elementer i Java Keywords (nøgleord, reserverede ord) –class, new, public, private Identifiers (navne) –Actor, ghitaNørby, a, clap, turn, Date, day, month, year,... Literals –”Aarhus Universitet”, 1928,... Special characters (specialtegn) –(, ),., {, }, =, +,  ==, <, <=, //, /*, */, /**,... White space –linieskift, mellemrum, tab,... –kan indsættes vikårligt mellem syntaktiske elementer uden at betydningen påvirkes

14 dIntProg, F08Klasser og objekter.14 Eksempel public class Director { String name; public void directPlayA() { Actor a, b; a= new Actor(”Ghita”); a.turn(7); b= a; b.clap(3); } KeywordIdentifiersLiteralsSpecial characters White space ???? ?

15 dIntProg, F08Klasser og objekter.15 Opsummering (engelsk/dansk) Object –objekt, forekomst, instans Field, instance variable –feltvariabel, instansvariabel, attribut Constructor –konstruktør Method –metode / operation Method signature –metodesignatur Method body –metodekrop Parameter return type og return statement Accessor –aflæsningsmetode Mutator –opdateringsmetode Declaration –erklæring Initialization –initialisering Block –blok Statement –sætning Assignment –tildeling


Download ppt "Klasser og objekter. dIntProg, F08Klasser og objekter.2 Grundbegreber Klasser og objekter –beskrivelse –oprettelse Attributter og metoder –tilstand –opførsel."

Lignende præsentationer


Annoncer fra Google