Skillnaden mellan klass och objekt i OOPs

Viktiga skillnader mellan klass och objekt

  • En klass är en mall för att skapa objekt i ett program, medan objektet är en instans av en klass.
  • En klass är en logisk enhet, medan ett objekt är en fysisk enhet.
  • En klass tilldelar inte minnesutrymme; å andra sidan allokerar ett objekt minnesutrymme.
  • Du kan bara deklarera en klass en gång, men du kan skapa mer än ett objekt med en klass.
  • Klasser kan inte manipuleras, medan objekt kan manipuleras.
  • Klasser har inga värden, medan objekt har sina egna värden.
  • Du kan skapa en klass med nyckelordet "klass", medan du kan skapa ett objekt med nyckelordet "nytt". Java.
Klass vs objekt
Klass vs objekt

Vad är klass?

En klass är en enhet som bestämmer hur ett objekt ska bete sig och vad objektet ska innehålla. Med andra ord är det en ritning eller en uppsättning instruktioner för att bygga en specifik typ av objekt. Den tillhandahåller initialvärden för medlemsvariabler och medlemsfunktioner eller -metoder.

Vad är objekt?

Ett objekt är inget annat än en fristående komponent som består av metoder och egenskaper för att göra en data användbar. Det hjälper dig att avgöra klassens beteende.

Till exempel, när du skickar ett meddelande till ett objekt, ber du objektet att anropa eller exekvera en av dess metoder.

Ur programmeringssynpunkt kan ett objekt vara en datastruktur, en variabel eller en funktion som har en minnesplats allokerad. Objektet är utformat som klasshierarkier.

Klass vs objekt – skillnaden mellan dem

Här är den viktiga skillnaden mellan klass och objekt:

Klass Ändamålet
En klass är en mall för att skapa objekt i programmet. Objektet är en instans av en klass.
En klass är en logisk enhet Objekt är en fysisk enhet
En klass tilldelar inte minnesutrymme när den skapas. Objekt tilldelar minnesutrymme närhelst de skapas.
Du kan bara deklarera klass en gång. Du kan skapa mer än ett objekt med en klass.
Exempel: bil. Exempel: Jaguar, BMW, Tesla, etc.
Klass genererar objekt Föremål ger liv åt klassen.
Klasser kan inte manipuleras eftersom de inte är tillgängliga i minnet. De kan manipuleras.
Den har inga värden som är associerade med fälten. Varje objekt har sina egna värden, som är associerade med fälten.
Du kan skapa klass med nyckelordet "klass". Du kan skapa objekt med "nytt" nyckelord i Java

Förstå begreppet Java Klasser och objekt med ett exempel.

Låt oss ta ett exempel på att utveckla ett husdjurshanteringssystem, speciellt avsett för hundar. Du kommer att behöva olika information om hundarna som olika hundraser, ålder, storlek etc.

Du måste modellera verkliga varelser, dvs hundar till mjukvaruenheter.

Konceptet av Java Klasser och objekt

Dessutom är frågan om miljoner dollar, hur du designar sådan programvara? Här är lösningen-

Låt oss först göra en övning.

Du kan se bilden på tre olika hundraser nedan.

Konceptet av Java Klasser och objekt

Stanna här nu! Lista ner skillnaderna mellan dem.

Några av skillnaderna du kanske har listat ut kanske ras, ålder, storlek, färg, etc. Om du tänker efter en minut är dessa skillnader också några vanliga egenskaper som delas av dessa hundar. Dessa egenskaper (ras, ålder, storlek, färg) kan bilda datamedlemmar för ditt objekt.

Konceptet av Java Klasser och objekt

Lista sedan ut de vanliga beteendena hos dessa hundar som att sova, sitta, äta, etc. Så dessa kommer att vara handlingar av våra programvaruobjekt.

Konceptet av Java Klasser och objekt

Hittills har vi definierat följande saker,

  • Klass: Hundar
  • Datamedlemmar or objekt: storlek, ålder, färg, ras, etc.
  • Metoder: äta, sova, sitta och springa.

Konceptet av Java Klasser och objekt

Nu, för olika värden för datamedlemmar (rasstorlek, ålder och färg) i Java klass får du olika hundföremål.

Konceptet av Java Klasser och objekt

Du kan designa vilket program som helst med detta OOPs tillvägagångssätt.

Klasser och objekt i Java

I programmet nedan har vi deklarerat en klass som heter Dog. Vi har definierat ett objekt av klassen som kallas "maltesiska" med ett nytt nyckelord. I den sista satsen System.out.println(maltesiska.getInfo()); vi visar hundinformation som ras, storlek, ålder, färg, etc.

// 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());
    }
}

Produktion:

Rasen är: Maltesisk Storlek är: Liten Ålder är:2 färgen är: vit

Typer av klasser

Följande är de viktiga typerna av klasser:

Härledda klasser och arv

En härledd klass är en klass som är skapad eller härledd från andra minnesklasser. Den används för att öka basklassens funktionalitet. Denna typ av klass härleder och ärver egenskaper från befintlig klass. Den kan också lägga till eller dela/förlänga sina egna egenskaper.

Superklasser:

En superklass är en klass från vilken du kan härleda många underklasser.

Underklasser:

En underklass är en klass som härrör från superklass.

Blandade klasser

En blandad klass är ytterligare en funktion som hjälper dig att ärva egenskaperna för en klass till en annan. Den använder en delmängd av klassens funktionalitet, medan en härledd klass använder den kompletta uppsättningen av superklassfunktionalitet.

Användning av klass

Här är de viktiga användningsområdena för klass:

  • Klass används för att hålla både datavariabler och medlemsfunktioner.
  • Det låter dig skapa användardefinierade objekt.
  • Klass ger ett sätt att organisera information om data.
  • Du kan använda klass för att ärva egenskapen för en annan klass.
  • Klasser kan användas för att dra fördel av konstruktor eller destruktor.
  • Den kan användas för en stor mängd data och komplexa applikationer.

Användning av objekt

Här är de viktiga användningsområdena för ett objekt

  • Det hjälper dig att veta vilken typ av meddelande som accepteras och vilken typ av returnerade svar.
  • Du kan använda ett objekt för att komma åt ett minne med hjälp av en objektreferensvariabel.
  • Det används för att manipulera data.
  • Objekt representerar ett verkligt problem som du hittar en lösning på.
  • Det gör det möjligt för datamedlemmar och medlemsfunktioner att utföra önskad uppgift.