[英]Can I overload variables in Java?
我正在写一个代表矩阵的类。 我希望它看起来像这样:
public class matrix {
private int[][] matrix;
private double[][] matrix;
//And so on and so forth so that the user can enter any primitive type and
//get a matrix of it
}
这是合法代码,还是我必须根据矩阵所拥有的数据类型使用不同的变量名?
你不能重载变量。 使用您的方法,您应该为它们指定不同的名称,然后为不同类型重载getMatrix
方法。
更好的方法是使用Java Generics:
public class Matrix<T> {
private T[][] matrix;
public T getMatrix() {return matrix;}
...
}
然后创建所需类型的对象: Matrix<Integer>
, Matrix<Double>
等。
你所展示的不是合法的Java代码。 你建议的方法(不同的名称)可以工作,或者你可以利用Java的对象系统,并使用盒装值(使类成员只是一个对象)或泛型,这样类型是一个参数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.