一只甜甜圈
getter和setter的想法是控制对类中变量的访问。这样,如果需要在内部更改值以其他方式表示,则可以这样做,而无需破坏类外的任何代码。例如,假设您有一个带有距离变量的类,并且以英寸为单位进行测量。几个月过去了,您在许多地方都使用了此类,突然意识到您需要以厘米为单位来表示该值。如果您不使用getter和setter,则必须跟踪该类的每次使用并在那里进行转换。如果使用了getter和setter,则只需更改这些方法,使用该类的所有内容都不会中断。public class Measurement{ /** * The distance in centimeters. */ private double distance; /** * Gets the distance in inches. * @return A distance value. */ public double getDistance() { return distance / 2.54; } /** * Sets the distance. * @param distance The distance, in inches. */ public void setDistance(double distance) { this.distance = distance * 2.54; }}