Nếu bạn lấy manh mối từ Hibernate:
Hibernate đọc / ghi trạng thái của Object với trường của nó. Hibernate cũng ánh xạ các thuộc tính kiểu Java Bean sang DB Schema. Hibernate Truy cập các trường để tải / lưu đối tượng. Nếu ánh xạ được thực hiện bởi thuộc tính, hibernate sử dụng getter và setter.
Đó là Encapsulation phân biệt có nghĩa là nơi bạn có getter / setters cho một trường và nó được gọi là thuộc tính, cùng với đó và chúng ta ẩn cấu trúc dữ liệu cơ bản của thuộc tính đó trong setMethod, chúng ta có thể ngăn chặn sự thay đổi không mong muốn bên trong setters. Tất cả những gì đóng gói là viết tắt của ...
Các trường phải được khai báo và khởi tạo trước khi chúng được sử dụng. Chủ yếu là để sử dụng nội bộ lớp.
Các thuộc tính có thể được thay đổi bởi setter và chúng được hiển thị bởi getters. Ở đây giá trường có getter / setters vì vậy nó là tài sản.
class Car{
private double price;
public double getPrice() {…};
private void setPrice(double newPrice) {…};
}
<class name="Car" …>
<property name="price" column="PRICE"/>
</class>
Tương tự sử dụng các trường , [Trong chế độ ngủ đông, đó là cách được đề xuất cho MAP bằng cách sử dụng các trường, trong đó id int id; được chú thích @Id, nhưng với Tài sản bạn có nhiều quyền kiểm soát hơn]
class Car{
private double price;
}
<class name="Car">
<property name=" price" column="PRICE" access="field"/>
</class>
Tài liệu Java nói: Trường là thành viên dữ liệu của một lớp. Một trường là không tĩnh, biến đối tượng không thoáng qua. Trường nói chung là một biến riêng trên một lớp cá thể.