Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

IS-102 Interaksjon med objekter

Liknende presentasjoner


Presentasjon om: "IS-102 Interaksjon med objekter"— Utskrift av presentasjonen:

1 IS-102 Interaksjon med objekter

2 Klassedefinisjoner public class KlasseNavn {
// definisjon av attributter // definisjon av konstruktører // definisjon av metoder } Klassedefinisjonen begynner med public class KlasseNavn {, og slutter med } Klassedefinisjonen inneholder definisjoner av attributter, konstruktører og metoder Even Åby Larsen IS-102 Objekter

3 Definisjon av attributter/instansvariable
private type attributtNavn; private/public bestemmer om attributt er tilgjengelig utenfor klassen type bestemmer hva slags verdi som kan lagres i variabelen attributtNavn er navnet Even Åby Larsen IS-102 Objekter

4 Private / Public Private Public public String getNavn()
: Private Public public String getNavn() public void setNavn(String nyttnavn) ….. private String navn; private int alder; Kun public delen vi ser fra utsiden av et objekt.

5 Datatyper Når vi programmerer skiller vi mellom forskjellige typer av verdier. Alle mulige verdier tilhører (minst) en type. Alle typene har navn. Eksempler: int – heltall, f.eks. 42 float, double – desimaltall, f.eks. 3.14 char – bokstaver og andre tegn, f.eks. 'a' boolean – logiske verdier, true eller false String – tekst, f.eks. "black" Even Åby Larsen IS-102 Objekter

6 Definisjon av metoder public returType metodeNavn(paramType paramNavn, ...) { setninger; } public/private bestemmer om metoden kan brukes utenfor klassen returType forteller hva slags verdi metoden gir fra seg. metodNavn er navnet på metoden. Metodenavn har liten forbokstav. paramType og paramNavn sier hva slags type parameterverdiene skal ha, og hva parameterne heter. Setningene inne i krøllparentesene kalles kroppen til metoden. De blir utført når vi kaller metoden. Even Åby Larsen IS-102 Objekter

7 Konstruktør (constructor)
Konstruktører er ”spesielle” set-metoder som kalles automatisk når det blir laget nye objekter. Konstruktøren kan ikke kalles direkte. Konstruktøren brukes til å sette opp start-tilstanden til det nye objektet. Konstruktører heter nøyaktig det samme som klassen, og har som oftest en eller flere parametere. Headeren spesifiserer ikke returverdi public KlasseNavn(paramType paramNavn, ...) { ... } Even Åby Larsen IS-102 Objekter

8 Setninger return uttrykk; variabel = uttrykk; objekt.metodeNavn(uttrykk, uttrykk, ...); System.out.println(uttrykk); System.out.println(); if (betingelse) { then-gren } else { else-gren Even Åby Larsen IS-102 Objekter

9 Variable vi har nå sett tre forskjellige kategorier av variable som har forskjellig levetid og gyldighet(sområde) variabeltype levetid (lifetime) gyldighet (scope) brukes til attributt så lenge objektet finnes objektet å lagre egenskaper som tilhører objektet parameter lå lenge metodekallet varer metoden å overføre verdier til en metode lokal variabel metodekall å huske mellom-resultater i en metode Even Åby Larsen IS-102 Objekter

10 Digitalur Even Åby Larsen IS-102 Objekter

11 Kan vi dele opp klokka? Et display med fire siffer?
Eller to med to siffer? Even Åby Larsen IS-102 Objekter

12 Abstraksjon og modularisering
Abstraksjon er evnen til å ignorere detaljene og konsentrere seg om de store linjene i et problem. Modularisering består i å dele et program i veldefinerte deler (moduler) som samarbeider på en veldefinert måte, og som kan lages og testes uavhengig av hverandre. Even Åby Larsen IS-102 Objekter

13 Klassen ClockDisplay public class ClockDisplay { private NumberDisplay hours; private NumberDisplay minutes; Constructor and methods omitted. } Even Åby Larsen IS-102 Objekter

14 Objektdiagrammer og klassediagrammer
Even Åby Larsen IS-102 Objekter

15 Primitive typer og objekttyper
Primitiv type Objekttype 32 int i; Even Åby Larsen IS-102 Objekter

16 Tilordning – objekttyper og primitive typer
32 ObjectType a; int a; ObjectType b; int b; b = a; Even Åby Larsen IS-102 Objekter

17 Metodekall kall på metode i samme objekt (interne) updateDisplay();
... private void updateDisplay() kall på metode i annet objekt minutes.increment(); Even Åby Larsen IS-102 Objekter


Laste ned ppt "IS-102 Interaksjon med objekter"

Liknende presentasjoner


Annonser fra Google