Przejdź do głównej treści

Klasa i obiekt

Słownik kwalifikacji EE8 - Kwalifikacja EE8

W programowaniu obiektowym klasa i obiekt to pojęcia powiązane, ale nie oznaczają tego samego.

Czym jest klasa?

Klasa to wzorzec, szablon lub definicja opisująca, jakie cechy i zachowania będą miały tworzone na jej podstawie obiekty. Klasa określa zwykle:

  • pola / atrybuty – dane przechowywane w obiekcie,
  • metody – czynności, które obiekt może wykonywać,
  • zasady tworzenia obiektów, np. konstruktor.

Przykład: klasa Samochod może opisywać markę, kolor i prędkość samochodu oraz metody jedz() i hamuj().

Czym jest obiekt?

Obiekt to konkretny egzemplarz klasy, czyli jej przedstawiciel. Powstaje na podstawie klasy i posiada własne wartości pól.

Jeżeli klasa Samochod jest wzorcem, to obiektami mogą być konkretne samochody, np. czerwony Opel albo niebieska Toyota.

Przykład

class Samochod {
    String marka;
    String kolor;
}

Samochod auto1 = new Samochod();
auto1.marka = "Opel";
auto1.kolor = "czerwony";

W tym przykładzie Samochod to klasa, a auto1 to obiekt utworzony na podstawie tej klasy.

Najważniejsza zasada egzaminacyjna

Nie należy używać pojęć klasa i obiekt zamiennie. Klasa jest definicją, a obiekt jest konkretnym wystąpieniem tej klasy. Dlatego poprawne stwierdzenie brzmi: obiekt jest przedstawicielem klasy.