Home >Java >javaTutorial >Java POJO Terminology: Field, Variable, Attribute, Property - What\'s the Difference?
Clarifying the Differences in Java POJO Entities
Within the realm of Java Plain Old Java Objects (POJOs), it is common to refer to internal private variables accessed through getters and setters using various terms. However, the precise distinctions between these terms can be confusing.
Field vs. Variable
According to Oracle's glossary (https://docs.oracle.com/javase/tutorial/information/glossary.html), a "field" is a data member of a class, typically non-static. In contrast, a "variable" is an item of data with a name, a type, and a scope. When used in the context of Java POJOs, the terms "field" and "variable" are often interchangeable, referring to the internal data members.
Attribute
The glossary does not specifically mention the term "attribute" in relation to Java POJOs. However, in some contexts, "attribute" may be used to refer to a characteristic or property of an object.
Property
A "property" is a more specific term used to describe characteristics of an object that can be set or modified by users. In the case of Java POJOs with getters and setters, the internal private variables can be considered properties since they can be accessed and updated from outside the class.
When Persisted
When Java POJOs are persisted in a database, the internal private variables may also be referred to as "persistent fields" or "database fields." This distinction emphasizes the fact that these variables are mapped to columns in the database table.
Conclusion
While there may be subtle nuances in the usage of these terms, in most cases, they can be used interchangeably when referring to internal private variables in Java POJOs that have getters and setters. The term "property" is particularly apt when discussing the ability to access and modify these variables from outside the class.
The above is the detailed content of Java POJO Terminology: Field, Variable, Attribute, Property - What\'s the Difference?. For more information, please follow other related articles on the PHP Chinese website!