Sch*_*Boy 35 java methods getter-setter
我被教导要经常使用吸气剂和固定剂.但是,我不知道这些方法的优缺点,因为通过实现它们,我们暴露数据并隐藏它.
我对此有点困惑.任何人都可以就我们使用吸气剂/定位器的原因给出一些正确的建议,以及它们的优点是什么?
Mic*_*rdt 65
基本的"具有公共getter和setter的私有字段除了返回或设置字段之外什么都不做"模式在封装时确实完全没有意义,除了它让你有机会在不改变API的情况下更改它.
所以不要不假思索地使用那种模式.仔细考虑您实际需要的操作.
getter和setter的真正意义在于你应该只在适当的地方使用它们,并且它们不仅可以获取和设置字段.
IllegalArgumentException所有这些都是隐藏在简单的"getter和setter"界面背后的实现细节.这就是封装的内容.
Rob*_*ani 17
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;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
46525 次 |
| 最近记录: |