Atrybuty klas Java


Atrybuty klas Java

W poprzednim rozdziale w przykładzie użyliśmy terminu „zmienna” x(jak pokazano poniżej). W rzeczywistości jest to atrybut klasy. Możesz też powiedzieć, że atrybuty klasy są zmiennymi w obrębie klasy:

Przykład

Utwórz klasę o nazwie „ Main” z dwoma atrybutami: xi y:

public class Main {
  int x = 5;
  int y = 3;
}

Innym terminem określającym atrybuty klasy są pola .


Dostęp do atrybutów

Dostęp do atrybutów można uzyskać, tworząc obiekt klasy i używając składni z kropką ( .):

Poniższy przykład utworzy obiekt Mainklasy o nazwie myObj. Używamy x atrybutu na obiekcie, aby wydrukować jego wartość:

Przykład

Utwórz obiekt o nazwie „ myObj” i wypisz wartość x:

public class Main {
  int x = 5;

  public static void main(String[] args) {
    Main myObj = new Main();
    System.out.println(myObj.x);
  }
}


Modyfikuj atrybuty

Możesz także modyfikować wartości atrybutów:

Przykład

Ustaw wartość xna 40:

public class Main {
  int x;

  public static void main(String[] args) {
    Main myObj = new Main();
    myObj.x = 40;
    System.out.println(myObj.x);
  }
}

Lub zastąp istniejące wartości:

Przykład

Zmień wartość xna 25:

public class Main {
  int x = 10;

  public static void main(String[] args) {
    Main myObj = new Main();
    myObj.x = 25; // x is now 25
    System.out.println(myObj.x);
  }
}

Jeśli nie chcesz mieć możliwości zastępowania istniejących wartości, zadeklaruj atrybut jako final:

Przykład

public class Main {
  final int x = 10;

  public static void main(String[] args) {
    Main myObj = new Main();
    myObj.x = 25; // will generate an error: cannot assign a value to a final variable
    System.out.println(myObj.x);
  }
}

Słowo finalkluczowe jest przydatne, gdy zmienna ma zawsze przechowywać tę samą wartość, na przykład PI (3.14159...).

Słowo finalkluczowe nazywa się „modyfikatorem”. Więcej na ten temat dowiesz się w rozdziale Modyfikatory Java .



Wiele obiektów

Jeśli tworzysz wiele obiektów jednej klasy, możesz zmienić wartości atrybutów w jednym obiekcie bez wpływu na wartości atrybutów w drugim:

Przykład

Zmień wartość xna 25 in myObj2i pozostaw xbez myObj1zmian:

public class Main {
  int x = 5;

  public static void main(String[] args) {
    Main myObj1 = new Main();  // Object 1
    Main myObj2 = new Main();  // Object 2
    myObj2.x = 25;
    System.out.println(myObj1.x);  // Outputs 5
    System.out.println(myObj2.x);  // Outputs 25
  }
}


Wiele atrybutów

Możesz określić dowolną liczbę atrybutów:

Przykład

public class Main {
  String fname = "John";
  String lname = "Doe";
  int age = 24;

  public static void main(String[] args) {
    Main myObj = new Main();
    System.out.println("Name: " + myObj.fname + " " + myObj.lname);
    System.out.println("Age: " + myObj.age);
  }
}

W następnym rozdziale dowiesz się, jak tworzyć metody klasowe i jak uzyskiwać do nich dostęp za pomocą obiektów.