Słowo kluczowe static w Java

Słowo kluczowe static w języku Java jest używane do zarządzania pamięcią głównie w kontekście zmiennych i metod. Elementy oznaczone jako static należą do klasy, a nie do konkretnej instancji tej klasy. To oznacza, że możemy mieć dostęp do nich bez konieczności tworzenia obiektu klasy. W tej lekcji przyjrzymy się zastosowaniom static na przykładzie klasy, która zarządza informacjami o pracownikach w firmie.

Przykład użycia static w Java

Załóżmy, że chcemy stworzyć aplikację do zarządzania pracownikami. Każdy pracownik ma swoje imię, nazwisko oraz identyfikator (ID). Dodatkowo, chcemy przechowywać informację o łącznej liczbie pracowników w firmie. Tutaj przydaje się zmienna static, ponieważ jest wspólna dla wszystkich instancji klasy.

public class Employee {
    // Zmienne instancji
    String firstName;
    String lastName;
    int id;
    
    // Statyczna zmienna przechowująca
    // liczbę pracowników
    static int employeeCount = 0;

    // Konstruktor
    public Employee(String firstName, 
                    String lastName) {
        this.firstName = firstName;
        this.lastName = lastName;
        this.id = ++employeeCount;
    }
    
    // Statyczna metoda do pobierania
    // liczby pracowników
    public static int getEmployeeCount() {
        return employeeCount;
    }
    
    // Metoda instancji do wyświetlania informacji o pracowniku
    public void displayInfo() {
        System.out.println("ID: " + id + ", Imię: " 
                           + firstName + ", Nazwisko: " 
                           + lastName);
    }
}

Klasa testowa

Aby zademonstrować działanie naszej klasy Employee, utworzymy prostą klasę testową:

public class EmployeeTest {
    public static void main(String[] args) {
        // Tworzenie obiektów pracowników
        Employee emp1 = new Employee("Jan", "Kowalski");
        Employee emp2 = new Employee("Anna", "Nowak");
        
        // Wyświetlanie informacji o pracownikach
        emp1.displayInfo();
        emp2.displayInfo();
        
        // Wyświetlanie łącznej liczby pracowników
        System.out.println("Łączna liczba pracowników: " 
                           + Employee.getEmployeeCount());
    }
}

Opis działania

  • Statyczne zmienne (employeeCount) są wspólne dla wszystkich instancji klasy. Dzięki temu, z każdym nowym pracownikiem, zmienna ta jest inkrementowana, dając nam aktualną liczbę pracowników w firmie.
  • Statyczne metody (getEmployeeCount()) mogą być wywoływane bez tworzenia instancji klasy. Są one użyteczne, gdy chcemy wykonać operacje niezależne od stanu obiektów danej klasy, np. pobieranie wspólnych dla klasy danych.

Podsumowanie

Słowo kluczowe static pozwala na zarządzanie pamięcią i dostępem do wspólnych zasobów w sposób efektywny. Statyczne zmienne i metody są użyteczne w wielu scenariuszach, w tym wtedy, gdy potrzebujemy przechowywać informacje czy zachowania wspólne dla klasy, niezwiązane bezpośrednio z jej instancjami. Wykorzystanie static ułatwia zarządzanie stanem wspólnym i zapewnia łatwy dostęp do zasobów klasy bez potrzeby tworzenia jej obiektów.

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.

Scroll to Top