Klass och objekt i Java

⚡ Smart sammanfattning

Klass och objekt i Java är de centrala byggstenarna i objektorienterad programmering. En klass är en ritning som definierar fält och metoder, medan ett objekt är en instans av den klassen. Denna resurs förklarar båda koncepten, deras skillnader och fungerande exempelprogram.

  • 🧱 Klass som ritning: En klass definierar de fält och metoder som är gemensamma för en viss typ av objekt.
  • ???? Objekt som instans: Ett objekt är en fristående instans av en klass, som innehåller sina egna data och beteenden.
  • ⚖️ Huvudskillnad: En klass är en mall; ett objekt är ett konkret exemplar skapat från den mallen.
  • 📐 Designprinciper: Bra klasser följer SOLID-principer för underhållbar objektorienterad kod.
  • 💻 Exempel: Två program visar en klass med main inuti och main placerad i en separat klass.

Klass och objekt i Java

Vad finns klasser och objekt i Java?

Klasser och objekt i Java är de grundläggande komponenterna i OOP. Ofta förekommer det förvirring mellan klasser och objekt. I den här handledningen försöker vi förklara skillnaden mellan en klass och ett objekt i JavaLåt oss först förstå vad de är.

Vad är klass i Java?

A Klass är en ritning eller en uppsättning instruktioner för att bygga en specifik typ av objekt. Det är ett grundläggande koncept inom objektorienterad programmering som kretsar kring verkliga enheter. En klass i Java bestämmer hur ett objekt ska bete sig och vad objektet ska innehålla.

Syntax för klass i Java

class <class_name> {
    field;
    method;
}

Vad är ett objekt i Java?

An Ändamålet är en instans av en klass. Ett föremål i OOP är inget annat än en fristående komponent som består av metoder och egenskaper för att göra en viss typ av data användbar. Till exempel färg, namn, tabell, väska eller skällande. När du skickar ett meddelande till ett objekt ber du objektet att anropa eller exekvera en av dess metoder som definieras i klassen. Ur programmeringssynpunkt kan ett objekt i OOP innehålla en datastruktur, en variabel eller en funktion. Det har en allokerad minnesplats. Java objekt är utformade som klasshierarkier.

Objektsyntax in Java

ClassName ReferenceVariable = new ClassName();

Vad är skillnaden mellan objekt och klass i Java?

A Klass Inom objektorienterad programmering är en ritning eller prototyp som definierar variablerna och metoderna (funktionerna) som är gemensamma för alla Java föremål av ett visst slag.

An objektet i OOP är ett exempel på en klass. Programvaruobjekt används ofta för att modellera verkliga objekt som du hittar i vardagen.

Klicka här. om videon inte är tillgänglig.

Klicka här. om videon inte är tillgänglig

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

Låt oss ta ett exempel på utvecklingping ett husdjur ledningssystem, speciellt avsedd för hundar. Du behöver diverse information om hundarna, såsom olika hundraser, ålder, storlek etc.

Du behöver modellera verkliga varelser, dvs. hundar, till programvaruenheter.

Java Klasser och objekt

Dessutom är miljondollarfrågan, hur designar man 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.

Java Klasser och objekt

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

Några av de skillnader du kanske har listat kan vara ras, ålder, storlek, färg etc. Om du tänker efter en stund är dessa skillnader också några gemensamma egenskaper som delas av dessa hundar. Dessa egenskaper (ras, ålder, storlek, färg) kan bilda dataelement för ditt objekt.

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.

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.

Java Klasser och objekt

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

Java Klasser och objekt

Du kan designa vilket program som helst med hjälp av denna OOP-metod. När man skapar en klass måste man följa dessa principer:

  • Single Responsibility Principle (SRP): En klass bör bara ha en anledning att förändras.
  • Öppen stängd princip (OCP): Det borde vara möjligt att utöka en klass utan att ändra den.
  • Liskov Substitutionsprincip (LSP): Härledda klasser måste vara utbytbara för sina basklasser.
  • Dependency Inversion Principle (DIP): Beroende på magmusklernatraction och inte på konkretioner.
  • Interface Segregation Principle (ISP): Förbered finkorniga gränssnitt som är klientspecifika.

Klasser och objekt i Java Exempel program

// Class Declaration
public 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 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:

Breed is: Maltese Size is:Small Age is:2 color is: white

Java Objekt och klass Exempel: huvudsaklig utanför klass

I det föregående programmet skapade vi main()-metoden inuti klassen. Nu skapar vi klassen och definierar main()-metoden i en annan klass. Detta är ett bättre sätt än det föregående.

// 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:

Breed is: Maltese Size is:Small Age is:2 color is: white

Vanliga frågor

Ja. AI-assistenter kan bygga upp klasser, fält, konstruktorer och metoder från en beskrivning i ett enkelt språk. Du bör fortfarande granska namngivning, inkapsling och logik för att säkerställa att den genererade koden passar din design.

AI-modeller känner igen klassstrukturer för att generera konsekventa objekt, föreslå metoder och omstrukturera kod mot ren, objektorienterad design. Detta accelererar utvecklingen samtidigt som det hållerping ansvarsområden välorganiserade.

En konstruktor är en speciell metod som initierar ett nytt objekt när det skapas. Den delar samma namn som klassen och har ingen returtyp, utan anger ofta initiala fältvärden.

De fyra pelarna är inkapsling, arv, polymorfism och abstracTillsammans strukturerar de objektorienterad Java program, som främjar återanvändbar, säker och underhållbar kod byggd kring klasser och objekt.

Sammanfatta detta inlägg med: