Programowanie obiektowe (OOP) jest fundamentalnym paradygmatem programowania wykorzystywanym w języku Java. Kluczowymi elementami OOP są klasy, dziedziczenie oraz modyfikatory dostępu, które razem tworzą potężne narzędzie do tworzenia zorganizowanego i modularnego kodu. W tej lekcji omówimy, jak tworzyć klasy w Javie, wykorzystać dziedziczenie (extends
), oraz jak stosować modyfikatory dostępu (private
, protected
, public
), aby kontrolować dostęp do składowych klasy.
Definicja klasy i dziedziczenie
Zacznijmy od zdefiniowania prostej klasy Animal
, która posłuży jako bazowa klasa dla innych klas reprezentujących konkretne zwierzęta.
// Klasa bazowa Animal
public class Animal {
// Modyfikator dostępu protected pozwala
// na dostęp w klasach dziedziczących
protected String name;
protected int age;
// Konstruktor klasy Animal
public Animal(String name, int age) {
this.name = name;
this.age = age;
}
// Metoda do wyświetlania informacji o zwierzęciu
public void displayInfo() {
System.out.println("Imię: " + name + ", Wiek: " + age);
}
}
Następnie, zdefiniujmy klasę Dog
, która dziedziczy z klasy Animal
i rozszerza ją o dodatkowe właściwości oraz metody.
// Klasa Dog dziedzicząca z klasy Animal
public class Dog extends Animal {
private String breed; // Rasa psa, dostęp prywatny
// Konstruktor klasy Dog
public Dog(String name, int age, String breed) {
super(name, age); // Wywołanie konstruktora klasy bazowej
this.breed = breed;
}
// Nadpisana metoda do wyświetlania informacji
@Override
public void displayInfo() {
super.displayInfo(); // Wywołanie metody z klasy bazowej
System.out.println("Rasa: " + breed);
}
}
Użycie modyfikatorów dostępu
Modyfikatory dostępu w Javie kontrolują widoczność klas, metod, oraz zmiennych. Istnieją cztery główne typy:
private
: Składowa jest dostępna tylko wewnątrz klasy.protected
: Składowa jest dostępna w klasie, w klasach dziedziczących oraz w tym samym pakiecie.public
: Składowa jest dostępna z każdego miejsca.- Brak modyfikatora (domyślny): Składowa jest dostępna wewnątrz pakietu.
W przykładzie klasy Dog
, pole breed
jest oznaczone jako private
, co oznacza, że dostęp do tej zmiennej jest możliwy tylko z wnętrza klasy Dog
. Metoda displayInfo()
jest publiczna, co pozwala na jej wywołanie z zewnątrz klasy.
Podsumowanie
W tej lekcji omówiliśmy podstawy programowania obiektowego w Javie, skupiając się na klasach, dziedziczeniu oraz modyfikatorach dostępu. Klasy i dziedziczenie pozwalają na organizację kodu w sposób, który ułatwia jego rozszerzanie i utrzymanie. Modyfikatory dostępu zapewniają kontrolę nad dostępnością składowych klasy, co jest kluczowe dla bezpieczeństwa i integralności kodu. Zrozumienie tych koncepcji jest fundamentem do tworzenia dobrze zorganizowanego i efektywnego kodu w Javie.
Jeżeli chcesz przyśpieszyć swoją naukę tworzenia stron chciałbym polecić mój kurs video Java w którym nauczysz się tego języka od podstaw do zaawansowanych jego aspektów.