Forskellen mellem klasse og objekt i OOP'er
Nøgleforskelle mellem klasse og objekt
- En klasse er en skabelon til at skabe objekter i et program, hvorimod objektet er en instans af en klasse.
- En klasse er en logisk enhed, mens et objekt er en fysisk enhed.
- En klasse tildeler ikke hukommelsesplads; på den anden side tildeler et objekt hukommelsesplads.
- Du kan kun erklære en klasse én gang, men du kan oprette mere end ét objekt ved hjælp af en klasse.
- Klasser kan ikke manipuleres, mens objekter kan manipuleres.
- Klasser har ingen værdier, hvorimod objekter har deres egne værdier.
- Du kan oprette en klasse ved at bruge "klasse" nøgleordet, mens du hånd kan oprette et objekt ved at bruge "nyt" nøgleord i Java.

Hvad er klasse?
En klasse er en enhed, der bestemmer, hvordan et objekt vil opføre sig, og hvad objektet skal indeholde. Med andre ord er det en plan eller et sæt instruktioner til at bygge en bestemt type objekt. Det giver startværdier for medlemsvariabler og medlemsfunktioner eller -metoder.
Hvad er objekt?
Et objekt er intet andet end en selvstændig komponent, der består af metoder og egenskaber til at gøre en data nyttig. Det hjælper dig med at bestemme klassens adfærd.
For eksempel, når du sender en besked til et objekt, beder du objektet om at påkalde eller udføre en af dets metoder.
Fra et programmeringssynspunkt kan et objekt være en datastruktur, en variabel eller en funktion, der har en hukommelsesplacering tildelt. Objektet er designet som klassehierarkier.
Klasse vs objekt - forskel mellem dem
Her er den vigtige forskel mellem klasse og objekt:
Klasse | Object |
---|---|
En klasse er en skabelon til at skabe objekter i programmet. | Objektet er en forekomst af en klasse. |
En klasse er en logisk enhed | Objekt er en fysisk enhed |
En klasse tildeler ikke hukommelsesplads, når den oprettes. | Objekt tildeler hukommelsesplads, når de oprettes. |
Du kan kun erklære klasse én gang. | Du kan oprette mere end ét objekt ved hjælp af en klasse. |
Eksempel: bil. | Eksempel: Jaguar, BMW, Tesla osv. |
Klasse genererer objekter | Genstande giver liv til klassen. |
Klasser kan ikke manipuleres, da de ikke er tilgængelige i hukommelsen. | De kan manipuleres. |
Den har ingen værdier, der er knyttet til felterne. | Hvert objekt har sine egne værdier, som er knyttet til felterne. |
Du kan oprette klasse ved hjælp af nøgleordet "klasse". | Du kan oprette objekt ved hjælp af "nyt" nøgleord i Java |
Forstå begrebet Java Klasser og objekter med et eksempel.
Lad os tage et eksempel på udvikling af et kæledyrshåndteringssystem, specielt beregnet til hunde. Du skal bruge forskellige oplysninger om hundene, såsom forskellige hunderacer, alder, størrelse osv.
Du skal modellere virkelige væsener, dvs. hunde til software-enheder.
Desuden er spørgsmålet om en million dollar, hvordan du designer sådan software? Her er løsningen -
Lad os først lave en øvelse.
Du kan se billedet af tre forskellige hunderacer nedenfor.
Stop her lige nu! Skriv ned forskellene mellem dem.
Nogle af de forskelle, du måske har nævnt, kan være race, alder, størrelse, farve osv. Hvis du tænker et øjeblik, er disse forskelle også nogle fælles karakteristika, som disse hunde deler. Disse karakteristika (race, alder, størrelse, farve) kan danne et dataelement for dit objekt.
Dernæst skal du liste den almindelige adfærd hos disse hunde som at sove, sidde, spise osv. Så disse vil være handlingerne af vores softwareobjekter.
Indtil videre har vi defineret følgende ting,
- Klasse: Hunde
- Data medlemmer or objekter: størrelse, alder, farve, race osv.
- Metoder: spise, sove, sidde og løbe.
Nu, for forskellige værdier af datamedlemmer (racestørrelse, alder og farve) i Java klasse, får du forskellige hundegenstande.
Du kan designe ethvert program ved hjælp af denne OOPs tilgang.
Klasser og objekter i Java
I nedenstående program har vi erklæret en klasse kaldet Hund. Vi har defineret et objekt af klassen kaldet "maltesisk" ved hjælp af et nyt nøgleord. I den sidste sætning System.out.println(maltesisk.getInfo()); vi viser hundeoplysninger som race, størrelse, alder, farve osv.
// 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()); } }
Output:
Racen er: Malteser Størrelse er: Lille Alder er:2 farven er: hvid
Klassetyper
Følgende er de vigtige typer af klasser:
Afledte Klasser og Arv
En afledt klasse er en klasse, der er oprettet eller afledt fra en anden mindeklasse. Det bruges til at øge funktionaliteten af basisklassen. Denne type klasse udleder og arver egenskaber fra eksisterende klasse. Den kan også tilføje eller dele/udvide sine egne egenskaber.
Superklasser:
En superklasse er en klasse, hvorfra du kan udlede mange underklasser.
Underklasser:
En underklasse er en klasse, der stammer fra superklasse.
Blandede klasser
En blandet klasse er endnu en funktionalitet, der hjælper dig med at arve egenskaberne for en klasse til en anden. Den bruger en delmængde af funktionaliteten af klassen, hvorimod en afledt klasse bruger det komplette sæt af superklassefunktionalitet.
Anvendelser af klasse
Her er de vigtige anvendelser af klassen:
- Klasse bruges til at holde både datavariable og medlemsfunktioner.
- Det giver dig mulighed for at oprette brugerdefinerede objekter.
- Klasse giver en måde at organisere information om data på.
- Du kan bruge klasse til at arve en anden klasses egenskab.
- Klasser kan bruges til at drage fordel af konstruktør eller destruktor.
- Det kan bruges til en stor mængde data og komplekse applikationer.
Brug af objekt
Her er de vigtige anvendelser af et objekt
- Det hjælper dig med at kende typen af accepteret besked og typen af returnerede svar.
- Du kan bruge et objekt til at få adgang til et stykke hukommelse ved hjælp af en objektreferencevariabel.
- Det bruges til at manipulere data.
- Objekter repræsenterer et problem i den virkelige verden, som du finder en løsning på.
- Det gør det muligt for datamedlemmer og medlemsfunktioner at udføre den ønskede opgave.