Co to jest klasa i obiekt w Java OOPS? Ucz się na przykładzie

Spisie treści:

Anonim

Klasy i obiekty w Javie są podstawowymi komponentami OOP. Często występuje pomieszanie klas i obiektów. W tym samouczku postaramy się przedstawić różnicę między klasą a obiektem w Javie.

Najpierw zrozummy, czym one są,

  • Co to jest klasa w Javie?
  • Co to jest obiekt w Javie?
  • Jaka jest różnica między obiektem a klasą w Javie?
  • Pojęcie klas i obiektów
  • Klasy i obiekty w przykładowych programach Java
  • Przykład obiektu i klasy Java: główna klasa zewnętrzna

Co to jest klasa w Javie?

Klasa to plan lub zestaw instrukcji do budowy określonego typu obiektu. Jest to podstawowa koncepcja programowania obiektowego, która obraca się wokół rzeczywistych bytów. Klasa w Javie określa, jak obiekt będzie się zachowywał i co będzie zawierał.

Składnia

class {field;method;} 

Co to jest obiekt w Javie?

Obiekt jest instancją klasy. Obiekt w OOPS to nic innego jak samodzielny komponent, który składa się z metod i właściwości, które sprawiają, że określony typ danych jest przydatny. Na przykład nazwa koloru, stół, torba, szczekanie. Kiedy wysyłasz wiadomość do obiektu, prosisz obiekt o wywołanie lub wykonanie jednej z jego metod zdefiniowanych w klasie.

Z programistycznego punktu widzenia obiekt w OOPS może zawierać strukturę danych, zmienną lub funkcję. Ma przydzielone miejsce w pamięci. Obiekty Java są zaprojektowane jako hierarchie klas.

Składnia

ClassName ReferenceVariable = new ClassName();

Jaka jest różnica między obiektem a klasą w Javie?

Klasa w programowaniu obiektowym jest plan lub prototyp, który definiuje zmienne i metody (funkcje) wspólne dla wszystkich obiektów Javy pewnego rodzaju.

Obiekt w oops to okaz klasy. Obiekty oprogramowania są często używane do modelowania rzeczywistych obiektów, które można znaleźć w życiu codziennym.

Kliknij tutaj, jeśli wideo nie jest dostępne

Zrozum pojęcie klas i obiektów Java na przykładzie.

Weźmy przykład opracowania systemu zarządzania zwierzętami, specjalnie przeznaczonego dla psów. Będziesz potrzebował różnych informacji o psach, takich jak różne rasy psów, wiek, rozmiar itp.

Musisz zamodelować istoty z prawdziwego życia, tj. Psy, w byty oprogramowania.

Co więcej, pytanie za milion dolarów brzmi: jak projektujesz takie oprogramowanie?

Oto rozwiązanie-

Najpierw zróbmy ćwiczenie.

Poniżej możesz zobaczyć zdjęcie trzech różnych ras psów.

Zatrzymaj się tutaj teraz! Wypisz różnice między nimi.

Niektóre z różnic, które mogłeś wymienić, może być rasą, wiekiem, rozmiarem, umaszczeniem itp. Jeśli pomyślisz przez chwilę, te różnice są również wspólnymi cechami tych psów. Te cechy (rasa, wiek, rozmiar, kolor) mogą tworzyć elementy składowe danych dla twojego obiektu.

Następnie wypisz typowe zachowania tych psów, takie jak spanie, siedzenie, jedzenie itp. Będą to więc działania naszych obiektów programowych.

Do tej pory zdefiniowaliśmy następujące rzeczy,

  • Klasa - Psy
  • Członkowie lub obiekty danych - rozmiar, wiek, kolor, rasa itp.
  • Metody - jedz, śpij, siadaj i biegaj.

Teraz, dla różnych wartości członków danych (wielkość rasy, wiek i kolor) w klasie Java, otrzymasz różne obiekty dla psów.

Możesz zaprojektować dowolny program przy użyciu tego podejścia OOP.

Tworząc klasę należy kierować się następującymi zasadami.

  • Zasada pojedynczej odpowiedzialności (SRP) - klasa powinna mieć tylko jeden powód do zmiany
  • Open Closed Responsibility (OCP) - Powinien być w stanie rozszerzyć dowolne klasy bez modyfikowania go
  • Odpowiedzialność za substytucje Liskova (LSR) - klasy pochodne muszą być substytucyjne dla swoich klas bazowych
  • Zasada odwrócenia zależności (DIP) - zależy od abstrakcji, a nie od konkrecji
  • Zasada segregacji interfejsów (ISP) - przygotuj szczegółowe interfejsy, które są specyficzne dla klienta.

Klasy i obiekty w przykładowych programach Java

// Class Declarationpublic class Dog {// Instance VariablesString breed;String size;int age;String color;// method 1public 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());}}
Wynik:
Breed is: Maltese Size is:Small Age is:2 color is: white

Przykład obiektu i klasy Java: główna klasa zewnętrzna

W poprzednim programie tworzymy metodę main () wewnątrz klasy. Teraz tworzymy klasy i definiujemy metodę main () w innej klasie. To lepszy sposób niż poprzedni.

// Class Declarationclass Dog {// Instance VariablesString breed;String size;int age;String color;// method 1public 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());}} 

Wynik:

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

Podsumowanie:

  • Klasa Java to jednostka, która określa, jak zachowają się obiekty Java i jakie obiekty będą zawierały
  • Obiekt Java to samodzielny komponent, który składa się z metod i właściwości, dzięki którym określony typ danych jest przydatny
  • System klas umożliwia programowi zdefiniowanie nowej klasy (klasy pochodnej) w odniesieniu do istniejącej klasy (nadklasy) przy użyciu technik takich jak dziedziczenie, nadpisywanie i rozszerzanie.