Klasse og objekt i Java

โšก Smart oppsummering

Klasse og objekt i Java er de viktigste byggesteinene i objektorientert programmering. En klasse er en blรฅkopi som definerer felt og metoder, mens et objekt er en forekomst av den klassen. Denne ressursen forklarer begge konseptene, forskjellene mellom dem og eksempler pรฅ fungerende programmer.

  • ๐Ÿงฑ Klasse som blรฅkopi: En klasse definerer feltene og metodene som er felles for en bestemt objekttype.
  • ???? Objekt som instans: Et objekt er en selvstendig instans av en klasse, som inneholder sine egne data og oppfรธrsel.
  • ๐Ÿ‡ง๐Ÿ‡ท Nรธkkelforskjell: En klasse er en mal; et objekt er et konkret eksemplar laget fra den malen.
  • ๐Ÿ“ Design prinsipper: Gode โ€‹โ€‹klasser fรธlger SOLID-prinsipper for vedlikeholdbar objektorientert kode.
  • ๐Ÿ’ป Eksempler: To programmer viser en klasse med main inni og main plassert i en egen klasse.

Klasse og objekt i Java

Hva er klasser og objekter i Java?

Klasser og objekter i Java er de grunnleggende komponentene i OOP. Det er ofte forvirring mellom klasser og objekter. I denne veiledningen prรธver vi รฅ fortelle deg forskjellen mellom en klasse og et objekt i JavaLa oss fรธrst forstรฅ hva de er.

Hva er klasse i Java?

A Klasse er en blรฅkopi eller et sett med instruksjoner for รฅ bygge en bestemt type objekt. Det er et grunnleggende konsept innen objektorientert programmering som dreier seg om virkelige enheter. En klasse i Java bestemmer hvordan et objekt vil oppfรธre seg og hva objektet skal inneholde.

Syntaks for klasse i Java

class <class_name> {
    field;
    method;
}

Hva er et objekt i Java?

An Objekt er en forekomst av en klasse. En gjenstand i OOP er ikke annet enn en selvstendig komponent som bestรฅr av metoder og egenskaper for รฅ gjรธre en bestemt type data nyttig. For eksempel farge, navn, tabell, bag eller barking. Nรฅr du sender en melding til et objekt, ber du objektet om รฅ kalle eller utfรธre en av metodene sine som definert i klassen. Fra et programmeringssynspunkt kan et objekt i OOP inkludere en datastruktur, en variabel eller en funksjon. Det har en minneplassering tildelt. Java objekter er utformet som klassehierarkier.

Objektsyntaks i Java

ClassName ReferenceVariable = new ClassName();

Hva er forskjellen mellom objekt og klasse i Java?

A Klasse I objektorientert programmering er en blรฅkopi eller prototype som definerer variablene og metodene (funksjonene) som er felles for alle Java gjenstander av en viss art.

An objekt i OOP er et eksempel pรฅ en klasse. Programvareobjekter brukes ofte til รฅ modellere virkelige objekter som du finner i hverdagen.

Klikk her. hvis videoen ikke er tilgjengelig.

Klikk her. hvis videoen ikke er tilgjengelig

Forstรฅ begrepet Java Klasser og objekter med et eksempel

La oss ta et eksempel pรฅ utviklingping et kjรฆledyr styringssystem, spesielt beregnet pรฅ hunder. Du trenger diverse informasjon om hundene, som forskjellige hunderaser, alder, stรธrrelse osv.

Du mรฅ modellere virkelige vesener, f.eks. hunder, til programvareenheter.

Java Klasser og objekter

Dessuten er million-dollar-spรธrsmรฅlet, hvordan designer man slik programvare?

Her er lรธsningen: Fรธrst, la oss gjรธre en รธvelse. Du kan se bildet av tre forskjellige hunderaser nedenfor.

Java Klasser og objekter

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 deg om et รธyeblikk, er disse forskjellene ogsรฅ noen fellestrekk som deles av disse hundene. Disse egenskapene (rase, alder, stรธrrelse, farge) kan danne dataelementer for objektet ditt.

Java Klasser og objekter

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.

Java Klasser og objekter

Sรฅ langt har vi definert fรธlgende ting:

  • Klasse โ€“ Hunder
  • Datamedlemmer or gjenstander โ€“ stรธrrelse, alder, farge, rase osv.
  • Metoder โ€“ spise, sove, sitte og lรธpe.

Java Klasser og objekter

Nรฅ, for forskjellige verdier av datamedlemmer (rase, stรธrrelse, alder og farge) i en Java klasse, vil du fรฅ forskjellige hundeobjekter.

Java Klasser og objekter

Du kan designe et hvilket som helst program ved hjelp av denne OOP-tilnรฆrmingen. Nรฅr du oppretter en klasse, mรฅ du fรธlge disse prinsippene:

  • Enkeltansvarsprinsipp (SRP): En klasse bรธr bare ha รฉn grunn til รฅ endre seg.
  • ร…pent lukket prinsipp (OCP): Det burde vรฆre mulig รฅ utvide en klasse uten รฅ endre den.
  • Liskov Substitusjonsprinsipp (LSP): Avledede klasser mรฅ kunne erstatte basisklassene sine.
  • Dependency Inversion Principle (DIP): Avhengig av magemusklenetracsjon og ikke pรฅ konkresjoner.
  • Interface Segregation Principle (ISP): Forbered finmaskede grensesnitt som er klientspesifikke.

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

Utgang:

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

Java Objekt og klasse Eksempel: hoved utenfor klasse

I det forrige programmet opprettet vi main()-metoden inne i klassen. Nรฅ oppretter vi klassen og definerer main()-metoden i en annen klasse. Dette er en bedre mรฅte enn 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());
    }
}

Utgang:

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

Spรธrsmรฅl og svar

Ja. AI-assistenter kan sette sammen klasser, felt, konstruktรธrer og metoder fra en beskrivelse i et enkelt sprรฅk. Du bรธr fortsatt gjennomgรฅ navngiving, innkapsling og logikk for รฅ sikre at den genererte koden passer til designet ditt.

AI-modeller gjenkjenner klassestrukturer for รฅ generere konsistente objekter, foreslรฅ metoder og omstrukturere kode mot ren, objektorientert design. Dette akselererer utviklingen samtidig som det holderping ansvarsomrรฅder godt organisert.

En konstruktรธr er en spesiell metode som initialiserer et nytt objekt nรฅr det opprettes. Den deler samme navn som klassen og har ingen returtype, og setter ofte innledende feltverdier.

De fire sรธylene er innkapsling, arv, polymorfisme og abstracsjon. Sammen strukturerer de objektorientert Java programmer, som fremmer gjenbrukbar, sikker og vedlikeholdbar kode bygget rundt klasser og objekter.

Oppsummer dette innlegget med: