Exempel 1 - Klassen BankKonto
Antag att en klass för ett bankkonto skall innehålla information om
kontonummer, saldo och räntesats samt metoder för att sätta in pengar på kontot, ta ut pengar och skriva ut kontots saldo samt att lägga årsränta till kontots saldo.
Klassdiagrammet kan se ut så här:
-kontonr : String
-saldo : double -räntesats : double |
+BankKonto()
+BankKonto(String,double,double) +sätt_in_pengar(double) : void +ta_ut_pengar(double) : void +skrivut_saldo() : void +läggtill_årsränta() : void +hämta_saldo() : double |
Klassdiagrammet ger information om att:
-
eftersom de är skyddade dvs private
:
kontonr
som är en int
saldo
som är en double
räntesats
som är en double
+
eftersom de är publika, dvs public
:
String, double, double
, vilket ger oss möjlighet att skapa ett bankkonto med givna värden på kontonr, saldo och räntesats.
+
efterom de är publika, dvs public
:
sätt_in_pengar
med en double
-parameter som anger det belopp som skall sättas in.
Metoden returnerar inget, dvs void
.
ta_ut_pengar
med en double
-parameter som anger det belopp som tas ut. Metoden returnerar inget, dvs void
.
skrivut_saldo
. Ingen parameter. Metoden returnerar inget, dvs void
.
läggtill_årsränta
. Ingen parameter. Metoden returnerar inget, dvs void
.
hämta_saldo
. Ingen parameter. Metoden returnerar ett double
-värde.
Exempel 2 - Klassen Atom
I en modell av en atom kan vi antaga att det finns ett antal protoner, neutroner och elektroner. Protonerna är positivt laddade och elektronerna är negativt laddade. Neutronerna är oladdade.
Masstalet för en atom definieras som summan av antalet protoner och neutroner. Atomnr för en atom definieras som antalet protoner. Atomvikten för en atom definieras som summan av enhetsvikterna för protonerna, neutronerna och elektronerna. Antag att enhetsvikten för en proton är 1.00730, en neutron 1.00870, en elektron 0.00050. Om en atom exvis innehåller en proton, ingen neutron och en elektron (dvs det är en väteatom) blir atomvikten 1.0078.
-namn: String
-antp: int -antn: int -ante: int |
+Atom()
+Atom(String,int,int,int) +getAtomNr() : int +getMasstal() : int +getAtomvikt() : double |
Följande kan utläsas av klassdiagrammet:
namn
är namnet på atomen
antp
är antalet protoner
antn
är antalet neutroner
ante
är antalet elektroner
Exempel 3 - Biblioteket med flera klasser
Här finns fem st klasser: Bibliotek, Bok, DVD, Lantagare och gemEgenskaper,
där gemEgenskaper är sådant som är gemensamt för Bok och DVD.
Relationerna mellan klasserna finns med i klassdiagrammet.
Siffrorna på linjerna visar kardinaliteten, dvs hur många objekt av en klass som svarar mot hur många av det andra.
Asterisken i 1 innehåller *
anger att Biblioteket kan innehålla godtyckligt många objekt av klassen Bok, under det att en Bok bara kan finnas i ett (1) Bibliotek.
Bibliotek innehåller:
lantagare
, dvs många objekt av klassen Lantagare och detta anges med Lantagare[]
,.
bocker
, dvs många objekt av klassen Bok och detta anges med Bok[]
.
DVDskivor
, dvs många objekt av klassen DVD och detta anges med Bok[]
.
lantagare
), lånade böcker
(bok[]
) och lånade DVD (DVD[]
).
lantagare
), återlämnade böcker
(bok[]
) och återlämnade DVD (DVD[]
).
set
-metoder) resp.
att hämta innehållet (get
-metoder).
DVD innehåller:
set
-metoder) resp.
att hämta innehållet (get
-metoder).
Lantagare innehåller:
set
-metoder) resp.
att hämta innehållet (get
-metoder).
gemEgenskaper innehåller gemensamma egenskaper för klassen Bok och DVD:
set
-metoder) resp.
att hämta innehållet (get
-metoder).