Klasse og objekt i Java

⚡ Smart opsummering

Klasse og objekt i Java er de centrale byggesten i objektorienteret programmering. En klasse er en blueprint, der definerer felter og metoder, mens et objekt er en instans af den pågældende klasse. Denne ressource forklarer begge koncepter, deres forskelle og fungerende eksempelprogrammer.

  • 🧱 Klasse som Blueprint: En klasse definerer de felter og metoder, der er fælles for en bestemt type objekt.
  • ???? Objekt som instans: Et objekt er en selvstændig instans af en klasse, der indeholder sine egne data og adfærd.
  • ⚖️ Nøgleforskel: En klasse er en skabelon; et objekt er et konkret eksemplar oprettet ud fra denne skabelon.
  • 📐 Designprincipper: Gode ​​klasser følger SOLID-principper for vedligeholdelig objektorienteret kode.
  • 💻 eksempler: To programmer viser en klasse med main indeni og main placeret i en separat klasse.

Klasse og objekt i Java

Hvad er klasser og objekter i Java?

Klasser og objekter i Java er de grundlæggende komponenter i OOP. Der er ofte forvirring mellem klasser og objekter. I denne vejledning forsøger vi at forklare dig forskellen mellem en klasse og et objekt i JavaLad os først forstå, hvad de er.

Hvad er klasse i Java?

A Klasse er en plan eller et sæt instruktioner til at bygge en bestemt type objekt. Det er et grundlæggende koncept inden for objektorienteret programmering, der drejer sig om virkelige enheder. En klasse i Java bestemmer, hvordan et objekt vil opføre sig, og hvad objektet skal indeholde.

Syntaks for klasse i Java

class <class_name> {
    field;
    method;
}

Hvad er et objekt i Java?

An Object er en forekomst af en klasse. En genstand i OOP er intet andet end en selvstændig komponent, der består af metoder og egenskaber til at gøre en bestemt type data nyttig. For eksempel farve, navn, tabel, taske eller gøen. Når du sender en besked til et objekt, beder du objektet om at kalde eller udføre en af ​​dets metoder som defineret i klassen. Fra et programmeringssynspunkt kan et objekt i OOP indeholde en datastruktur, en variabel eller en funktion. Det har en tildelt hukommelsesplacering. Java Objekter er designet som klassehierarkier.

Objektsyntaks i Java

ClassName ReferenceVariable = new ClassName();

Hvad er forskellen mellem objekt og klasse i Java?

A Klasse I objektorienteret programmering er en blueprint eller prototype, der definerer de variabler og metoder (funktioner), der er fælles for alle Java genstande af en bestemt art.

An objekt i OOP er et eksempel på en klasse. Softwareobjekter bruges ofte til at modellere virkelige objekter, som man finder i hverdagen.

Klik link. hvis videoen ikke er tilgængelig.

Klik link. hvis videoen ikke er tilgængelig

Forstå begrebet Java Klasser og objekter med et eksempel

Lad os tage et eksempel på udviklingping et kæledyr styringssystem, 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, f.eks. hunde, til softwareenheder.

Java Klasser og objekter

Desuden er million-dollar-spørgsmålet, hvordan designer man sådan en software?

Her er løsningen: Lad os først lave en øvelse. Du kan se billedet af tre forskellige hunderacer nedenfor.

Java Klasser og objekter

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 dig om et øjeblik, er disse forskelle også nogle fælles karakteristika, som disse hunde deler. Disse karakteristika (race, alder, størrelse, farve) kan danne dataelementer for dit objekt.

Java Klasser og objekter

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.

Java Klasser og objekter

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.

Java Klasser og objekter

Nu, for forskellige værdier af datamedlemmer (race, størrelse, alder og farve) i en Java klasse, får du forskellige hundegenstande.

Java Klasser og objekter

Du kan designe ethvert program ved hjælp af denne OOP-tilgang. Når man opretter en klasse, skal man følge disse principper:

  • Single Responsibility Principle (SRP): En klasse bør kun have én grund til at ændre sig.
  • Åbent lukket princip (OCP): Det burde være muligt at udvide en klasse uden at ændre den.
  • Liskov Substitutionsprincip (LSP): Afledte klasser skal kunne substitueres med deres basisklasser.
  • Afhængighedsinversionsprincip (DIP): Afhængig af mavemusklertraction og ikke på konkretioner.
  • Interface Segregation Principle (ISP): Forbered finkornede grænseflader, der er klientspecifikke.

Klasser og objekter i Java Eksempler på programmer

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

Output:

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

Java Objekt og klasse Eksempel: primær uden for klasse

I det forrige program oprettede vi main()-metoden inde i klassen. Nu opretter vi klassen og definerer main()-metoden i en anden klasse. Dette er en bedre metode end den forrige.

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

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

Ofte Stillede Spørgsmål

Ja. AI-assistenter kan scaffolde klasser, felter, konstruktører og metoder ud fra en beskrivelse i et letforståeligt sprog. Du bør stadig gennemgå navngivning, indkapsling og logik for at sikre, at den genererede kode passer til dit design.

AI-modeller genkender klassestrukturer for at generere konsistente objekter, foreslå metoder og omstrukturere kode mod et rent, objektorienteret design. Dette accelererer udviklingen, samtidig med at det holderping ansvarsområder er velorganiserede.

En konstruktør er en særlig metode, der initialiserer et nyt objekt, når det oprettes. Den deler samme navn som klassen og har ingen returtype, og angiver ofte indledende feltværdier.

De fire søjler er indkapsling, arv, polymorfi og abstraction. Sammen strukturerer de objektorienteret Java programmer, der fremmer genanvendelig, sikker og vedligeholdelig kode bygget op omkring klasser og objekter.

Opsummer dette indlæg med: