Erinevus OOP-ides klassi ja objekti vahel
Peamised erinevused klassi ja objekti vahel
- Klass on mall objektide loomiseks programmis, samas kui objekt on klassi eksemplar.
- Klass on loogiline üksus, objekt aga füüsiline üksus.
- Klass ei eralda mäluruumi; teisest küljest eraldab objekt mäluruumi.
- Klassi saab deklareerida ainult üks kord, kuid klassi abil saate luua rohkem kui ühe objekti.
- Klassidega ei saa manipuleerida, samas kui objektidega saab manipuleerida.
- Klassidel pole väärtusi, samas kui objektidel on oma väärtused.
- Klassi saate luua märksõna "klass" abil, samas kui käsitsi saate luua objekti, kasutades märksõna "uus". Java.

Mis on klass?
Klass on olem, mis määrab, kuidas objekt käitub ja mida objekt sisaldab. Teisisõnu, see on plaan või juhiste kogum teatud tüüpi objekti ehitamiseks. See pakub liikmemuutujate ja liikmefunktsioonide või -meetodite algväärtusi.
Mis on objekt?
Objekt pole midagi muud kui iseseisev komponent, mis koosneb meetoditest ja omadustest andmete kasulikuks muutmiseks. See aitab teil määrata klassi käitumist.
Näiteks kui saadate objektile sõnumi, palute objektil käivitada või käivitada mõni selle meetod.
Programmeerimise seisukohast võib objekt olla andmestruktuur, muutuja või funktsioon, millele on eraldatud mälukoht. Objekt on kujundatud klassihierarhiatena.
Klass vs objekt – erinevus nende vahel
Siin on oluline erinevus klassi ja objekti vahel:
klass | objekt |
---|---|
Klass on mall objektide loomiseks programmis. | Objekt on klassi eksemplar. |
Klass on loogiline üksus | Objekt on füüsiline üksus |
Klass ei eralda selle loomisel mäluruumi. | Objekt eraldab nende loomisel mäluruumi. |
Klassi saab deklareerida ainult üks kord. | Klassi abil saate luua rohkem kui ühe objekti. |
Näide: auto. | Näide: Jaguar, BMW, Tesla jne. |
Klass genereerib objekte | Esemed annavad klassile elu. |
Klassidega ei saa manipuleerida, kuna need pole mälus saadaval. | Neid saab manipuleerida. |
Sellel ei ole väljadega seotud väärtusi. | Igal objektil on oma väärtused, mis on seotud väljadega. |
Klassi saate luua märksõna "klass" abil. | Saate luua objekti kasutades "uus" märksõna sisse Java |
Mõistke mõistet Java Klassid ja objektid näitega.
Võtame näiteks spetsiaalselt koertele mõeldud lemmikloomade juhtimissüsteemi väljatöötamise. Teil on vaja koerte kohta erinevat teavet, nagu erinevad koerte tõud, vanus, suurus jne.
Peate modelleerima tegelikud olendid, st koerad tarkvaraüksusteks.
Veelgi enam, miljoni dollari küsimus on, kuidas te sellist tarkvara kavandate? Siin on lahendus -
Esiteks teeme harjutuse.
Kolme erinevat koeratõugu pilti näete allpool.
Lõpeta siin kohe! Loetlege nendevahelised erinevused.
Mõned erinevused, mille võisite välja tuua, võib-olla tõug, vanus, suurus, värvus jne. Kui mõtlete hetkeks, on need erinevused ka mõned nende koerte ühised omadused. Need omadused (tõug, vanus, suurus, värvus) võivad moodustada teie objekti andmeliikmed.
Järgmisena loetlege nende koerte tavalised käitumisviisid, nagu magamine, istumine, söömine jne. Nii et need on meie tarkvaraobjektide tegevused.
Seni oleme määratlenud järgmised asjad,
- klass: Koerad
- Andmeliikmed or esemeid: suurus, vanus, värv, tõug jne.
- Meetodid: söö, maga, istu ja jookse.
Nüüd andmeliikmete erinevate väärtuste jaoks (tõu suurus, vanus ja värvus). Java klassis, saad erinevaid koeraesemeid.
Selle OOP-meetodi abil saate kujundada mis tahes programmi.
Klassid ja objektid Java
Allolevas programmis oleme deklareerinud klassi nimega Koer. Oleme uue märksõna abil määratlenud klassi objekti nimega "maltesa". Viimases lauses System.out.println(maltese.getInfo()); kuvame koera teavet, nagu tõug, suurus, vanus, värv jne.
// Class Declaration class Dog { // Instance Variables String breed; String size; int age; String color; // method 1 public String getInfo() { return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color); } } public class Execute{ public static void main(String[] args) { Dog maltese = new Dog(); maltese.breed="Maltese"; maltese.size="Small"; maltese.age=2; maltese.color="white"; System.out.println(maltese.getInfo()); } }
Väljund:
Tõug on: Malta Suurus on: Väike Vanus on:2 värv on: valge
Klasside tüübid
Järgmised on peamised klassitüübid:
Tuletatud klassid ja pärand
Tuletatud klass on klass, mis on loodud või tuletatud teisest meenutamisklassist. Seda kasutatakse põhiklassi funktsionaalsuse suurendamiseks. Seda tüüpi klass tuletab ja pärib olemasoleva klassi omadused. Samuti saab see lisada või jagada/laiendada oma omadusi.
Superklassid:
Ülemklass on klass, millest saate tuletada palju alamklasse.
Alamklassid:
Alamklass on klass, mis tuleneb ülemklassist.
Segaklassid
Segaklass on veel üks funktsioon, mis aitab teil ühe klassi omadusi teisele pärida. See kasutab klassi funktsionaalsuse alamhulka, samas kui tuletatud klass kasutab superklassi funktsioonide täielikku komplekti.
Klassi kasutusalad
Siin on klassi olulised kasutusalad:
- Klassi kasutatakse nii andmemuutujate kui ka liikmefunktsioonide hoidmiseks.
- See võimaldab teil luua kasutaja määratletud objekte.
- Klass võimaldab korraldada andmete kohta teavet.
- Klassi saate kasutada teise klassi vara pärimiseks.
- Klassid saab kasutada konstruktori või hävitaja eeliste kasutamiseks.
- Seda saab kasutada suure hulga andmete ja keerukate rakenduste jaoks.
Objekti kasutamine
Siin on objekti olulised kasutusalad
- See aitab teil teada vastuvõetud sõnumi tüüpi ja tagastatud vastuste tüüpi.
- Objekti abil saate objekti viitemuutuja abil mälutükile juurde pääseda.
- Seda kasutatakse andmetega manipuleerimiseks.
- Objektid kujutavad endast reaalset probleemi, millele otsite lahendust.
- See võimaldab andmeliikmetel ja liikmefunktsioonidel soovitud ülesannet täita.