Co to są zmienne instancji w Javie

Zmienne Java

Zmienne Java przechowują wartości danych lub odwołania do obiektów. Poniższa przykładowa zmienna przechowuje wartość pierwotnego typu integer:

int myNum = 5;

Poniższy przykładowy kod pokazuje, jak utworzyć zmienną do przechowywania odwołania do obiektu, używając klasy Integer:

Integer myNumber = new Integer (5);

Przechowuje odwołanie do obiektu zamiast wartości danych, tak jak w pierwszym przykładzie. Gdy Java znajdzie ten kod, obiekt zostanie utworzony zgodnie z deklaracją klasy Integer, zwracając odniesienie do lokalizacji nowego obiektu w pamięci. Po operacji przypisania wskazanej przez znak równości nazwa zmiennej "myNumber" wskazuje na tę lokalizację.

Klasy

Gdy programiści tworzą aplikacje w Javie przy użyciu technik obiektowych, tworzą jedną lub więcej deklaracji klasy, definiując obiekty, których potrzebują do wykonania zestawu zadań w ramach aplikacji jako całości. W deklaracji klasy programiści mogą zawierać zmienne i metody. Te zmienne i metody istnieją dla każdej instancji klasy utworzonej w aplikacji. Metoda konstruktora jest szczególnie ważna, ponieważ gdy programy Java tworzą obiekt klasy, wykonywana jest metoda konstruktora.

Obiekty instancji

Gdy deklaracja klasy istnieje w aplikacji Java, programiści mogą tworzyć wystąpienia obiektów klasy. Programy mogą również automatycznie tworzyć obiekty klas, które są standardem w języku, na przykład klasa Integer. Poniższy przykładowy kod pokazuje, jak utworzyć obiekt klasy "Pomocnik" w aplikacji z deklaracją klasy "Pomocnik":

Helper myHelp = new Helper ("Jim");

To działałoby na wypadek, gdyby konstruktor klasy podjął parametr łańcuchowy.

Zmienne instancji

Zmienne instancji przechowują dane dla poszczególnych instancji klasy. Na przykład w klasie "Pomocnik" można zadeklarować następującą zmienną instancji:

private String myName;

Zwykle pojawia się przed metodą konstruktora, która może utworzyć instancję w następujący sposób:

public Helper (String helperName) {myName = helperName; }

Powszechną praktyką jest zapewnienie, że wszystkie zmienne instancji mają przypisaną wartość w momencie zakończenia wykonywania metody konstruktora. Zmienne instancji są deklarowane z prywatną widocznością, co oznacza, że ​​ich wartości można zmieniać tylko w obrębie klasy.

Dostęp

Zewnętrzny kod klasy może czasami uzyskać dostęp do zmiennych instancji za pomocą metod klasy, tak jak w poniższym przykładowym kodzie:

public String getName () {return myName; }

Kod zewnętrzny może uzyskać dostęp do zmiennej, wywołując tę ​​metodę w instancji klasy, w następujący sposób:

String theName = myHelp.getName ();

Jest to metoda "accessor". Metody zapewniające zewnętrzny kod z możliwością modyfikowania wartości zmiennych instancji, metody "mutatora", mogą przeprowadzać poprawki, aby zapobiec używaniu nieprawidłowych wartości.