Klasa i obiekt w Java

Czym sฤ… klasy i obiekty Java?

Klasy i obiekty w Java sฤ… podstawowymi skล‚adnikami OOP. Czฤ™sto zdarza siฤ™, ลผe klasy i obiekty sฤ… mylone. W tym samouczku staramy siฤ™ wyjaล›niฤ‡ rรณลผnicฤ™ miฤ™dzy klasฤ… a obiektem Java. Najpierw zrozummy, czym one sฤ…,

W czym jest klasa Java?

Klasa sฤ… planem lub zestawem instrukcji do zbudowania okreล›lonego typu obiektu. Jest to podstawowa koncepcja programowania obiektowego, ktรณra koncentruje siฤ™ wokรณล‚ rzeczywistych bytรณw. Klasa w Java okreล›la, jak obiekt bฤ™dzie siฤ™ zachowywaล‚ i co bฤ™dzie zawieraล‚.

Skล‚adnia klasy w Java

class <class_name>{  
    field;  
    method;  
  }

Czym jest obiekt Java?

przedmiot jest instancjฤ… klasy. Obiekt w OOPS jest niczym innym jak samodzielnym komponentem, ktรณry skล‚ada siฤ™ z metod i wล‚aล›ciwoล›ci, aby uczyniฤ‡ konkretny typ danych uลผytecznym. Na przykล‚ad nazwa koloru, tabela, torba, szczekanie. Kiedy wysyล‚asz wiadomoล›ฤ‡ do obiektu, prosisz obiekt o wywoล‚anie lub wykonanie jednej ze swoich metod zdefiniowanych w klasie. Z punktu widzenia programowania obiekt w OOPS moลผe zawieraฤ‡ strukturฤ™ danych, zmiennฤ… lub funkcjฤ™. Ma przydzielonฤ… lokalizacjฤ™ pamiฤ™ci. Java Obiekty sฤ… projektowane jako hierarchie klas.

Skล‚adnia obiektu w Java

ClassName ReferenceVariable = new ClassName();

Jaka jest rรณลผnica miฤ™dzy obiektem a klasฤ… w Java?

A Klasa w programowaniu obiektowym to plan lub prototyp, ktรณry definiuje zmienne i metody (funkcje) wspรณlne dla wszystkich Java Przedmioty pewnego rodzaju.

An przedmiot w OOPS jest okazem klasy. Obiekty oprogramowania sฤ… czฤ™sto uลผywane do modelowania obiektรณw ze ล›wiata rzeczywistego, ktรณre moลผna znaleลบฤ‡ w ลผyciu codziennym.

Kliknij w tym miejscu jeล›li film nie jest dostฤ™pny

Zrozumieฤ‡ koncepcjฤ™ Java Klasy i obiekty z przykล‚adem.

Weลบmy przykล‚ad rozwoju zwierzaka System zarzฤ…dzaniaspecjalnie przeznaczone dla psรณw. Bฤ™dziesz potrzebowaฤ‡ rรณลผnych informacji o psach, takich jak rรณลผne rasy psรณw, wiek, wielkoล›ฤ‡ itp.

Musisz modelowaฤ‡ istoty z prawdziwego ลผycia, tj. psy, w byty programowe.

Java Klasy i przedmioty

Co wiฤ™cej, pytanie za milion dolarรณw brzmi: jak projektuje siฤ™ takie oprogramowanie?

Oto rozwiฤ…zanie- Najpierw zrรณbmy ฤ‡wiczenie. Poniลผej moลผesz zobaczyฤ‡ zdjฤ™cie trzech rรณลผnych ras psรณw.

Java Klasy i przedmioty

Zatrzymaj siฤ™ tu i teraz! Wypisz rรณลผnice miฤ™dzy nimi.

Niektรณre z rรณลผnic, ktรณre mogล‚eล› wymieniฤ‡, to rasa, wiek, rozmiar, kolor itp. Jeล›li siฤ™ chwilฤ™ zastanowisz, rรณลผnice te sฤ… rรณwnieลผ pewnymi wspรณlnymi cechami wspรณlnymi dla tych psรณw. Te cechy (rasa, wiek, rozmiar, kolor) mogฤ… stanowiฤ‡ elementy danych Twojego obiektu.

Java Klasy i przedmioty

Nastฤ™pnie wypisz typowe zachowania tych psรณw, takie jak sen, siedzenie, jedzenie itp. Bฤ™dฤ… to wiฤ™c dziaล‚ania naszych obiektรณw oprogramowania.

Java Klasy i przedmioty

Do tej pory zdefiniowaliล›my nastฤ™pujฤ…ce rzeczy,

  • Klasa โ€“ Psy
  • Czล‚onkowie danych or obiektyโ€“ wielkoล›ฤ‡, wiek, kolor, rasa itp.
  • Metodyโ€“ jeล›ฤ‡, spaฤ‡, siedzieฤ‡ i biegaฤ‡.

Java Klasy i przedmioty

Teraz dla rรณลผnych wartoล›ci elementรณw danych (wielkoล›ฤ‡ rasy, wiek i kolor) w Java klasie, otrzymasz rรณลผne przedmioty dla psรณw.

Java Klasy i przedmioty

Moลผesz zaprojektowaฤ‡ dowolny program, uลผywajฤ…c tego podejล›cia OOPs. Podczas tworzenia klasy naleลผy przestrzegaฤ‡ nastฤ™pujฤ…cych zasad.

  • Zasada pojedynczej odpowiedzialnoล›ci (SRP) โ€“ Klasa powinna mieฤ‡ tylko jeden powรณd do zmiany
  • Otwarta, zamkniฤ™ta odpowiedzialnoล›ฤ‡ (OCP)- Powinien mรณc rozszerzaฤ‡ dowolne klasy bez modyfikowania ich
  • Odpowiedzialnoล›ฤ‡ za substytucjฤ™ Liskova (LSR)- Klasy pochodne muszฤ… byฤ‡ substytucyjne dla swoich klas podstawowych
  • Zasada inwersji zaleลผnoล›ci (DIP) โ€“ Polegaj na abstrakcji, a nie na konkretach
  • Zasada segregacji interfejsu (ISP) โ€“ Przygotuj drobnoziarniste interfejsy dostosowane do potrzeb klienta.

Klasy i obiekty w Java Przykล‚adowe programy

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

Wyjล›cie:

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

Java Przykล‚ad obiektu i klasy: gล‚รณwna klasa zewnฤ™trzna

W poprzednim programie tworzymy wewnฤ…trz klasy metodฤ™ main(). Teraz tworzymy klasy i definiujemy metodฤ™ main() w innej klasie. To lepszy sposรณb niลผ poprzedni.

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

Wyjล›cie:

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

Podsumowanie

  • Java Klasa to jednostka okreล›lajฤ…ca sposรณb Java Obiekty bฤ™dฤ… siฤ™ zachowywaฤ‡ i co bฤ™dฤ… zawieraฤ‡
  • A Java obiekt jest samodzielnym komponentem, ktรณry skล‚ada siฤ™ z metod i wล‚aล›ciwoล›ci, dziฤ™ki ktรณrym okreล›lony typ danych jest uลผyteczny
  • System klas pozwala programowi zdefiniowaฤ‡ nowฤ… klasฤ™ (klasฤ™ pochodnฤ…) w kategoriach istniejฤ…cej klasy (nadklasy) za pomocฤ… techniki takiej jak dziedzictwo, zastฤ™powanie i wzmacnianie.

Podsumuj ten post nastฤ™pujฤ…co: