Hvad er klasse og objekt i Java OOPS? Lær med eksempel


Klasser og objekter i Java er de grundlæggende komponenter i OOP'er. Ofte er der en forvirring mellem klasser og objekter. I denne tutorial forsøger vi at fortælle dig forskellen mellem klasse og objekt i Java.

Lad os først forstå, hvad de er,

Hvad er klasse i Java?

Klasse er en plan eller et sæt instruktioner til at bygge en bestemt type objekt. Det er et grundlæggende koncept for objektorienteret programmering, som kredser om de virkelige entiteter. 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 objekt i Java?

Object er en forekomst af en klasse. En genstand i OOPS er intet andet end en selvstændig komponent, som består af metoder og egenskaber til at gøre en bestemt type data nyttig. For eksempel farvenavn, bord, taske, barking. Når du sender en besked til et objekt, beder du objektet om at påkalde eller udføre en af ​​dets metoder som defineret i klassen.

Fra et programmeringssynspunkt kan et objekt i OOPS indeholde en datastruktur, en variabel eller en funktion. Den har en hukommelsesplacering tildelt. Java-objekter er designet som klasse herarchies.

Objektsyntaks i Java

ClassName ReferenceVariable = new ClassName();

Hvad er forskellen mellem objekt og klasse i Java?

A Klasse i objektorienteret programmering er en plan eller prototype, der definerer variablerne og metoderne (funktionerne), der er fælles for alle Java-objekter af en bestemt art.

An objekt i OOPS er et eksemplar af en klasse. Softwareobjekter bruges ofte til at modellere objekter fra den virkelige verden, du finder i hverdagen.

Klik link. hvis videoen ikke er tilgængelig

Forstå begrebet Java-klasser og -objekter med et eksempel.

Lad os tage et eksempel på at udvikle 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, dvs. hunde til software-enheder.

Java-klasser og -objekter

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.

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 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.

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 following 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 (racestørrelse, alder og farve) i Java-klassen, vil du få forskellige hundeobjekter.

Java-klasser og -objekter

Du kan designe ethvert program ved hjælp af denne OOPs tilgang.

Mens man opretter en klasse, skal man følge folloenwing principper.

  • Single Responsibility Principle (SRP)- En klasse skal kun have én grund til at skifte
  • Åbent lukket ansvar (OCP)- Det bør være i stand til at udvide alle klasser uden at ændre det
  • Liskov Substitution Responsibility (LSR)- Afledte klasser skal være substituerbare for deres basisklasser
  • Afhængighedsinversionsprincip (DIP)- Afhængig af abstraktion og ikke af konkretioner
  • Interface Segregation Principle (ISP)- Forbered finkornede grænseflader, der er klientspecifikke.

Klasser og objekter i Java-eksempelprogrammer

// 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 klasseeksempel: hoved uden for klasse

I tidligere program opretter vi main()-metoden inde i klassen. Nu opretter vi klasser og definerer main()-metoden i en anden klasse. Dette er en bedre måde 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

Sammendrag:

  • Java Class er en enhed, der bestemmer, hvordan Java-objekter vil opføre sig, og hvilke objekter der skal indeholde
  • Et Java-objekt er en selvstændig komponent, som består af metoder og egenskaber til at gøre bestemte typer data nyttige
  • Et klassesystem tillader programmet at definere en ny klasse (afledt klasse) i forhold til en eksisterende klasse (superklasse) ved at bruge en teknik som f.eks. arv, tilsidesætte og forstærke.