Składowe statyczne a składowe instancji
Dziedziczenie i polimorfizm - Podstawy Javy (Java)
Składowe statyczne: Pole globalCount należy do klasy, a nie do obiektów, i jest wspólne dla wszystkich obiektów klasy Counter. Zwiększane za każdym razem, gdy tworzony jest nowy obiekt. Można uzyskać dostęp do niego za pomocą Counter.getGlobalCount(). Składowe instancji: Pole instanceCount należy do konkretnego obiektu i nie jest współdzielone. Każdy obiekt ma swoją własną kopię tego pola.
public class Counter {
// Pole statyczne - wspólne dla wszystkich obiektów
private static int globalCount = 0;
// Pole instancji - niezależne dla każdego obiektu
private int instanceCount = 0;
// Konstruktor
public Counter() {
globalCount++; // Zwiększa wartość wspólnego licznika
instanceCount++; // Zwiększa wartość licznika instancji
}
// Getter dla pola statycznego
public static int getGlobalCount() {
return globalCount;
}
// Getter dla pola instancji
public int getInstanceCount() {
return instanceCount;
}
// Metoda główna
public static void main(String[] args) {
// Tworzenie obiektów
Counter c1 = new Counter();
Counter c2 = new Counter();
Counter c3 = new Counter();
// Wyświetlanie liczników
System.out.println("Globalny licznik: " + Counter.getGlobalCount()); // Wspólny dla wszystkich
System.out.println("Licznik dla c1: " + c1.getInstanceCount()); // Niezależny dla c1
System.out.println("Licznik dla c2: " + c2.getInstanceCount()); // Niezależny dla c2
}
} Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.
Wszystkie lekcje kursu Podstawy Javy · Zaloguj się, aby zapisać postęp na koncie.