Avatar billede fear Nybegynder
14. januar 2001 - 14:04 Der er 2 kommentarer og
1 løsning

Indkapsling mm. i Java

Hvad er indkapsling i Java?
Og hvordan/hvornår bruges det?

Og nu til noget andet.

Hvornår bruger man public, static og private i Java? og hvad dækker begreberne over?

Avatar billede stigc Nybegynder
14. januar 2001 - 14:17 #1
At indkapsle data er en hensigmæssig måde at opdele programdele på. I JAVA gør man det ved hjælp af klasser. Tit og ofte laver man klasser ud fra navneord i virkelighedene. Man siger mna laver klasser ude fra obejketer i problemområdet. Problemområdet er det ststemet skal \"overvåge\".

F.eks kunne en klasse være en kunde. Denne kunde programmere man med en klasse og får derved samlet dennes datatyper et sted. Sammen med kundes data, ligger man også alle funktionener der arbejder på disse data. Det gælder om at lave samhørige klasser.

Klasser kan også bestå, kun af funktioner. Her kan det være man indkapsler en række funktioner, som kan noget bestemet.


Public bruges når en attribut eller funktion i en klasser skal kunne kaldes fra andre klasser.

Private hvis det kun må ske inde for klassen.

Og en statiuc variable giver alle instanser af en klasse den samme variable.

Indkapsling bruges også ved at lade attributterne være private, og kun sørger for en tilgang igennem public funktioner. Det giver en lav kobliong mellem klasserne, og gør det senere let at skifte datastrukture ud.

Avatar billede fear Nybegynder
14. januar 2001 - 14:26 #2
jeg forstå ikke helt din definationen på static variabler. Hvad mener du med at den giver alle instanser af en klasse den samme variable??
Avatar billede stigc Nybegynder
14. januar 2001 - 14:30 #3

i en Klasse-definition har en variable der hedder:

static int antalOprettet;

Hvis vi i konstruktøren sætter objektet til at:

antalOprettet++;

Så vil antalOprettet indholde antal gange der er blevet oprettet et objekt.

Det skyldes at de deler attributten, og ikke har en hver!

Alle objekter referer til præcis den samme variable (altså samme sted i hukommelsen)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester