Java Class Attributes
Оновлено: 22.05.2023
Атрибути класів Java
У попередньому розділі ми використовували термін "змінна" для x у прикладі (як показано нижче). Насправді це атрибут класу. Або можна сказати, що атрибути класу - це змінні всередині класу:
Створіть клас з назвою "Main" з двома атрибутами: x та y:
Main
x
y
public class Main {
int x = 5;
int y = 3;
}
Доступ до атрибутів
Ви можете отримати доступ до атрибутів, створивши об'єкт класу, а також використовуючи крапковий синтаксис (.):
У наступному прикладі створюється об'єкт класу Main з іменем myObj. Ми використовуємо атрибут x об'єкту для виведення його значення:
Створіть об'єкт з ім'ям "myObj" і виведіть значення x:
myObj
x
public class Main {
int x = 5;
public static void main(String[] args) {
Main myObj = new Main();
System.out.println(myObj.x);
}
}
Змінити атрибути
Ви також можете змінювати значення атрибутів:
Встановіть значення x рівним 40:
x
public class Main {
int x;
public static void main(String[] args) {
Main myObj = new Main();
myObj.x = 40;
System.out.println(myObj.x);
}
}
Або перевизначити існуючі значення:
Змініть значення x на 25:
x
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);
}
}
Якщо вам не потрібна можливість перевизначати існуючі значення, оголосіть атрибут як фінальний:
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);
}
}
Кілька об'єктів
Якщо ви створюєте декілька об'єктів одного класу, ви можете змінювати значення атрибутів в одному об'єкті, не впливаючи на значення атрибутів в інших:
Змініть значення x на 25 в myObj2, а в myObj1 залиште x без змін:
x
myObj2
x
myObj1
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
}
}
Кілька атрибутів
Ви можете вказати скільки завгодно атрибутів:
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);
}
}