Różnica między klasą a obiektem

Spisie treści:

Anonim

Co to jest klasa?

Klasa to jednostka, która określa, jak będzie się zachowywał obiekt i co będzie zawierał. Innymi słowy, jest to plan lub zestaw instrukcji, jak zbudować określony typ obiektu. Zawiera wartości początkowe dla zmiennych składowych i funkcji lub metod składowych.

W tym samouczku dotyczącym różnic dowiesz się:

  • Co to jest klasa?
  • Co to jest obiekt?
  • Zrozum pojęcie klas i obiektów Java na przykładzie.
  • Klasy i obiekty w Javie
  • Klasa Vs. Obiekt
  • Rodzaje zajęć
  • Zastosowania klasy
  • Korzystanie z obiektu

Co to jest obiekt?

Obiekt to nic innego jak samodzielny komponent, który składa się z metod i właściwości, które czynią dane użytecznymi. Pomaga ci określić zachowanie klasy.

Na przykład, kiedy wysyłasz wiadomość do obiektu, prosisz obiekt o wywołanie lub wykonanie jednej z jego metod.

Z programistycznego punktu widzenia obiekt może być strukturą danych, zmienną lub funkcją, która ma przydzielone miejsce w pamięci. Obiekt jest zaprojektowany jako hierarchie klas.

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.

Klasy i obiekty w Javie

W poniższym programie zadeklarowaliśmy klasę o nazwie Dog. Zdefiniowaliśmy obiekt klasy o nazwie „maltese” za pomocą nowego słowa kluczowego. W ostatniej instrukcji System.out.println (maltese.getInfo ()); wyświetlamy informacje o psie, takie jak rasa, rozmiar, wiek, kolor itp.

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

Rasa: Maltańczyk Wielkość: Mały wiek: 2 maść to: biały

Klasa Vs. Obiekt

Oto ważna różnica między klasą a obiektem:

Klasa Obiekt
Klasa to szablon do tworzenia obiektów w programie. Obiekt jest instancją klasy.
Klasa jest jednostką logiczną Obiekt jest bytem fizycznym
Klasa nie przydziela miejsca w pamięci podczas jej tworzenia. Obiekt przydziela miejsce w pamięci za każdym razem, gdy są tworzone.
Możesz zadeklarować klasę tylko raz. Możesz utworzyć więcej niż jeden obiekt za pomocą klasy.
Przykład: samochód. Przykład: Jaguar, BMW, Tesla itp.
Klasa generuje obiekty Przedmioty zapewniają życie klasie.
Nie można manipulować klasami, ponieważ nie są one dostępne w pamięci. Można nimi manipulować.
Nie ma żadnych wartości, które są skojarzone z polami. Każdy obiekt ma swoje własne wartości, które są skojarzone z polami.
Możesz stworzyć klasę za pomocą słowa kluczowego „class”. Możesz stworzyć obiekt używając słowa kluczowego "new" w Javie

Rodzaje zajęć

Poniżej przedstawiono ważne typy zajęć:

Klasy pochodne i dziedziczenie

Klasa pochodna to klasa utworzona lub wyprowadzona z innej przypominającej klasy. Służy do zwiększenia funkcjonalności klasy bazowej. Ten typ klasy dziedziczy i dziedziczy właściwości z istniejącej klasy. Może również dodawać lub udostępniać / rozszerzać swoje własne właściwości.

Nadklasy:

Nadklasa to klasa, z której można wyprowadzić wiele podklas.

Podklasy:

Podklasa to klasa wywodząca się z nadklasy.

Zajęcia mieszane

Klasa mieszana to kolejna funkcja, która pomaga dziedziczyć właściwości jednej klasy do innej. Wykorzystuje podzbiór funkcjonalności klasy, podczas gdy klasa pochodna używa pełnego zestawu funkcji nadklasy.

Zastosowania klasy

Oto ważne zastosowania klasy:

  • Klasa służy do przechowywania zarówno zmiennych danych, jak i funkcji składowych.
  • Umożliwia tworzenie obiektów definiowanych przez użytkownika.
  • Klasa zapewnia sposób organizowania informacji o danych.
  • Możesz użyć class do dziedziczenia właściwości innej klasy.
  • Klasy mogą służyć jako konstruktor lub destruktor.
  • Może być używany do dużych ilości danych i złożonych aplikacji.

Korzystanie z obiektu

Oto ważne zastosowania obiektu

  • Pomaga poznać typ zaakceptowanej wiadomości i typ zwróconych odpowiedzi.
  • Możesz użyć obiektu, aby uzyskać dostęp do fragmentu pamięci za pomocą zmiennej odniesienia do obiektu.
  • Służy do manipulowania danymi.
  • Obiekty reprezentują rzeczywisty problem, dla którego znajdujesz rozwiązanie.
  • Umożliwia członkom danych i funkcjom członkowskim wykonanie żądanego zadania.

KLUCZOWE RÓŻNICE:

  • Klasa to szablon do tworzenia obiektów w programie, podczas gdy obiekt jest instancją klasy.
  • Klasa jest bytem logicznym, podczas gdy obiekt jest bytem fizycznym.
  • Klasa nie przydziela miejsca w pamięci, z drugiej strony obiekt przydziela przestrzeń pamięci.
  • Możesz zadeklarować klasę tylko raz, ale możesz utworzyć więcej niż jeden obiekt za pomocą klasy.
  • Nie można manipulować klasami, podczas gdy obiektami można manipulować.
  • Klasy nie mają żadnych wartości, podczas gdy obiekty mają swoje własne wartości.
  • Możesz stworzyć klasę używając słowa kluczowego "class", podczas gdy ręcznie możesz stworzyć obiekt używając słowa kluczowego "new" w Javie.