"Hei, Amigo!"

"Hei, Ellie!"

"I dag skal jeg fortelle deg mye om klasser i Java."

" Forklaring nr. 1. Jeg starter med en analogi. Alle ting i den materielle verden består av atomer. Det finnes forskjellige typer atomer: hydrogen, oksygen, jern, uran... Kombinasjoner av disse atomene utgjør forskjellige molekyler, stoffer og gjenstander."

"Disse atomene har noen indre strukturer, som elektroner og en kjerne som består av protoner og nøytroner."

"Ja, jeg kan litt om strukturen til atomer. Jeg er tross alt en robot!"

"Java-verdenen er strukturert på en lignende måte. Programmer består av ulike typer objekter (klasser). Ulike klasser inneholder på sin side ulike interne strukturer (variabler og metoder)."

"Hvis vi ser på et program som en helhet, så er dets byggeklosser objekter. Klasser er typene blokker. Med andre ord, forskjellige typer blokker er objekter av forskjellige klasser. "

— Jeg tror jeg forstår det.

" Forklaring nr. 2. Når vi trenger en ny objekttype, lager vi en ny klasse og definerer måten dens interne objekter oppfører seg på. "

"Det høres litt for generelt ut. Det virker klart, men du sa ikke noe konkret."

"Når det gjelder den interne strukturen, består en klasse av metoder som gjør noe, og variabler som brukes av metodene for å lagre data. "

"Så, ville det være enklere å si at en klasse er et sett med metoder?"

"Nesten. For å være mer nøyaktig er en klasse en gruppe relaterte metoder og delte variabler som brukes av disse metodene for å lagre forskjellige verdier."

"Jeg skjønner. For å lage en ny klasse, må vi først skrive disse metodene..."

"Ja. Og vi må også bestemme hvilke variabler ulike metoder skal dele. Vi trekker disse variablene ut av metodene og legger dem inn i klassen, dvs. vi gjør lokale variabler om til medlemsvariabler (instanser)."

"I utgangspunktet er en klasse opprettet slik:

1. Programmereren bestemmer hvilke andre objekter de trenger.

2. Programmereren deler disse objektene inn i ulike typer, avhengig av hva de skal gjøre.

3. Programmereren skriver en egen klasse for hver type.

4. I en klasse erklærer de de nødvendige metodene og variablene.

5. I hver metode skriver de kommandoer for å få metoden til å gjøre det de vil at den skal gjøre.

6. Klassen er klar. Du kan nå lage objekter av klassen."

"Kult! For et interessant mønster! Det må jeg huske."

"Husk det. Det vil komme godt med. Programmeringsfilosofien som krever at et program skal deles inn i objekter kalles objektorientert programmering ( OOP )."

"Java er et klassisk eksempel på et OOP-språk: i Java er alt et objekt."

"Å studere Java består av to store oppgaver: lære å skrive dine egne klasser og lære å bruke andres klasser . I dag starter vi med de enkleste av disse. Vi skal lære å skrive de enkleste timene og selvfølgelig , hvordan lage objekter av disse klassene. Objekter kalles også ofte 'forekomster' av en klasse. De er synonymer; begge uttrykkene er korrekte."

"Har det."

"For å oppsummere kan vi si at en klasse er et miniprogram: noen data og funksjoner som bruker dataene til å gjøre noe. Klasser brukes til å lage forekomster av klasser, også kjent som objekter. "

"For å lage et objekt, skriv ' new class_name()' i koden. Her er noen eksempler:"

Eksempler
Cat cat = new Cat();
Reader reader = new BufferedReader(new InputStreamReader(System.in));
InputStream is = new FileInputStream(path);

"Et objekt har to interessante egenskaper:"

" Først . Hvert objekt lagrer sin egen kopi av instansvariabler. Dette betyr at hvis instansvariablene x og y ble deklarert i en klasse og 10 objekter av den klassen ble opprettet, vil hvert objekt ha sine egne variabler. Endre variablene i en objekt påvirker ikke variablene i et annet objekt. "

" For det andre . Når du lager objekter, kan du sende forskjellige argumenter. Disse verdiene brukes til å initialisere objektet. Litt som å navngi en nyfødt. Mange klasser krever slike argumenter for å lage forekomster (objekter) av klassen. "

"Jeg skjønner det. Hva sa du om instansvariabler?"

"Hvert objekt har sine egne data. Dette er forekomstvariablene."

Java-kode Skjermutgang:
Cat cat1 = new Cat();
cat1.name =  "Oscar";

Cat cat2 = new Cat();
cat2.name = "Smudge";

System.out.println(cat1.name);
System.out.println(cat2.name);
Oscar
Smudge