Forskjellen mellom klasse og objekt i OOPs
Nøkkelforskjeller mellom klasse og objekt
- En klasse er en mal for å lage objekter i et program, mens objektet er en forekomst av en klasse.
- En klasse er en logisk enhet, mens et objekt er en fysisk enhet.
- En klasse tildeler ikke minneplass; på den annen side tildeler et objekt minneplass.
- Du kan kun deklarere en klasse én gang, men du kan opprette mer enn ett objekt ved å bruke en klasse.
- Klasser kan ikke manipuleres, mens objekter kan manipuleres.
- Klasser har ingen verdier, mens objekter har sine egne verdier.
- Du kan opprette en klasse ved å bruke "klasse" nøkkelord, mens du kan lage et objekt ved å bruke "nytt" nøkkelord i Java.
Hva er klasse?
En klasse er en enhet som bestemmer hvordan et objekt skal oppføre seg og hva objektet skal inneholde. Med andre ord er det en blåkopi eller et sett med instruksjoner for å bygge en bestemt type objekt. Den gir startverdier for medlemsvariabler og medlemsfunksjoner eller metoder.
Hva er objekt?
Et objekt er ikke annet enn en selvstendig komponent som består av metoder og egenskaper for å gjøre en data nyttig. Det hjelper deg å bestemme oppførselen til klassen.
For eksempel, når du sender en melding til et objekt, ber du objektet om å påkalle eller utføre en av metodene.
Fra et programmeringssynspunkt kan et objekt være en datastruktur, en variabel eller en funksjon som har en minneplassering tildelt. Objektet er utformet som klassehierarkier.
Klasse vs objekt - forskjellen mellom dem
Her er den viktige forskjellen mellom klasse og objekt:
Klasse | Objekt |
---|---|
En klasse er en mal for å lage objekter i programmet. | Objektet er en forekomst av en klasse. |
En klasse er en logisk enhet | Objekt er en fysisk enhet |
En klasse tildeler ikke minneplass når den opprettes. | Objekt tildeler minneplass når de opprettes. |
Du kan kun erklære klasse én gang. | Du kan lage mer enn ett objekt ved hjelp av en klasse. |
Eksempel: bil. | Eksempel: Jaguar, BMW, Tesla, etc. |
Klasse genererer objekter | Gjenstander gir liv til klassen. |
Klasser kan ikke manipuleres siden de ikke er tilgjengelige i minnet. | De kan manipuleres. |
Den har ingen verdier som er knyttet til feltene. | Hvert objekt har sine egne verdier, som er knyttet til feltene. |
Du kan opprette klasse ved å bruke søkeordet "klasse". | Du kan opprette objekt ved å bruke "nytt" nøkkelord i Java |
Forstå begrepet Java Klasser og objekter med eksempel.
La oss ta et eksempel på utvikling av et kjæledyrhåndteringssystem, spesielt ment for hunder. Du trenger forskjellig informasjon om hundene som forskjellige hunderaser, alder, størrelse osv.
Du må modellere virkelige vesener, dvs. hunder, til programvareenheter.
Dessuten er millionspørsmålet hvordan du designer slik programvare? Her er løsningen-
Først, la oss gjøre en øvelse.
Du kan se bildet av tre forskjellige hunderaser nedenfor.
Stopp her nå! Skriv ned forskjellene mellom dem.
Noen av forskjellene du kanskje har listet opp kan være rase, alder, størrelse, farge osv. Hvis du tenker et øyeblikk, er disse forskjellene også noen vanlige egenskaper som disse hundene deler. Disse egenskapene (rase, alder, størrelse, farge) kan danne datamedlemmer for objektet ditt.
List deretter opp den vanlige oppførselen til disse hundene som å sove, sitte, spise osv. Så dette vil være handlingene til programvareobjektene våre.
Så langt har vi definert følgende ting,
- Klasse: Hunder
- Datamedlemmer or gjenstander: størrelse, alder, farge, rase, etc.
- Metoder: spise, sove, sitte og løpe.
Nå, for forskjellige verdier for datamedlemmer (rasestørrelse, alder og farge) i Java klasse, vil du få forskjellige hundeobjekter.
Du kan designe et hvilket som helst program ved å bruke denne OOPs-tilnærmingen.
Klasser og objekter i Java
I programmet nedenfor har vi erklært en klasse kalt Hund. Vi har definert et objekt av klassen kalt "maltesisk" ved å bruke et nytt nøkkelord. I den siste setningen System.out.println(maltesisk.getInfo()); vi viser hundeinformasjon som rase, størrelse, alder, farge 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()); } }
Utgang:
Rasen er: Maltesisk Størrelse er: Liten Alder er:2 fargen er: hvit
Klassetyper
Følgende er de viktige klassetypene:
Avledede klasser og arv
En avledet klasse er en klasse som er opprettet eller avledet fra en annen minneklasse. Den brukes til å øke funksjonaliteten til basisklassen. Denne typen klasse henter og arver egenskaper fra eksisterende klasse. Den kan også legge til eller dele/utvide sine egne egenskaper.
Superklasser:
En superklasse er en klasse som du kan utlede mange underklasser fra.
Underklasser:
En underklasse er en klasse som stammer fra superklasse.
Blandede klasser
En blandet klasse er en funksjon til som hjelper deg med å arve egenskapene til en klasse til en annen. Den bruker et undersett av funksjonaliteten til klassen, mens en avledet klasse bruker det komplette settet med superklassefunksjonalitet.
Bruk av klasse
Her er de viktige bruksområdene for klassen:
- Klasse brukes til å holde både datavariabler og medlemsfunksjoner.
- Den lar deg lage brukerdefinerte objekter.
- Klassen gir en måte å organisere informasjon om data på.
- Du kan bruke klasse til å arve eiendommen til en annen klasse.
- Klasser kan brukes til å dra nytte av konstruktør eller destruktor.
- Den kan brukes til en stor mengde data og komplekse applikasjoner.
Bruk av objekt
Her er de viktige bruksområdene til et objekt
- Det hjelper deg å vite hvilken type melding som er akseptert og typen returnerte svar.
- Du kan bruke et objekt for å få tilgang til et minne ved å bruke en objektreferansevariabel.
- Den brukes til å manipulere data.
- Objekter representerer et problem i den virkelige verden som du finner en løsning på.
- Den gjør det mulig for datamedlemmer og medlemsfunksjoner å utføre ønsket oppgave.