Java tut 22: Java Class Attributes ( Thuộc tính lớp trong Java)
Thuộc tính lớp Java (Class Attributes)
Trong chương trước, chúng ta đã sử dụng thuật ngữ “biến” x
trong ví dụ (như hình bên dưới). Nó thực sự là một thuộc tính của lớp. Hoặc bạn có thể nói rằng các thuộc tính lớp là các biến trong một lớp:
Thí dụ
Tạo một lớp có tên ” Main
” với hai thuộc tính: x
và y
:
public class Main {
int x = 5;
int y = 3;
}
Một thuật ngữ khác cho các thuộc tính của lớp là các trường .
Truy cập các thuộc tính
Bạn có thể truy cập các thuộc tính bằng cách tạo một đối tượng của lớp và bằng cách sử dụng cú pháp dấu chấm ( .
):
Ví dụ sau sẽ tạo một đối tượng của Main
lớp, với tên myObj
. Chúng tôi sử dụng x
thuộc tính trên đối tượng để in giá trị của nó:
Thí dụ
Tạo một đối tượng có tên ” myObj
” và in giá trị của x
:
public class Main {
int x = 5;
public static void main(String[] args) {
Main myObj = new Main();
System.out.println(myObj.x);
}
}
Sửa đổi các thuộc tính
Bạn cũng có thể sửa đổi các giá trị thuộc tính:
Thí dụ
Đặt giá trị x
thành 40:
public class Main {
int x;
public static void main(String[] args) {
Main myObj = new Main();
myObj.x = 40;
System.out.println(myObj.x);
}
}
Hoặc ghi đè các giá trị hiện có:
Thí dụ
Thay đổi giá trị x
thành 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);
}
}
Nếu bạn không muốn khả năng ghi đè các giá trị hiện có, hãy khai báo thuộc tính là final
:
Thí dụ
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);
}
}
Các final
từ khóa rất hữu ích khi bạn muốn có một biến để luôn lưu trữ các giá trị như nhau, giống như PI (3,14159 …).
Các final
từ khóa được gọi là “sửa đổi”. Bạn sẽ tìm hiểu thêm về những điều này trong Chương bổ sung Java .
Nhiều đối tượng
Nếu bạn tạo nhiều đối tượng của một lớp, bạn có thể thay đổi các giá trị thuộc tính trong một đối tượng mà không ảnh hưởng đến các giá trị thuộc tính trong đối tượng kia:
Thí dụ
Thay đổi giá trị của x
25 trong myObj2
, và để lại x
trong myObj1
không thay đổi:
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
}
}
Nhiều thuộc tính
Bạn có thể chỉ định bao nhiêu thuộc tính tùy thích:
Thí dụ
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);
}
}
Chương tiếp theo sẽ hướng dẫn bạn cách tạo các phương thức lớp và cách truy cập chúng bằng các đối tượng.