我有这个向量类:
public class Vector {
public double x;
public double y;
public double getLength() {
return Math.sqrt(x*x+y*y);
}
}
大多数时候,我只是想像现在一样使用它,但是在某些情况下,我想使用它的易失性版本,所以我尝试扩展它:
public class VectorVolatile extends Vector {
public volatile double x;
public volatile double y;
}
其背后的想法是将原始类中的所有功能也用于volatile类。但这是行不通的。变量(x,y)将无法正确替换。
我想使用volatile,因为我有2个线程。一个线程读取和写入对象,另一线程仅读取。我想使用volatile而不是同步,因为我认为它速度更快,并且由于一个线程仅读取,因此将变量设置为volatile应该足够。
是否有一种方法可以从原始类中获取所有功能而无需复制和粘贴?我不应该使用挥发物吗?
我有这个向量类别:public class Vector {public double x;公共双y; public double getLength(){返回Math.sqrt(x * x + y * y); }}大多数时候我只想...
通过扩展,您没有更改Vector
类的成员的属性。