我在同一个项目中有两个类,我在两个类中都使用Math.random()
。
在第一个工作正常,但在第二个它说random()
未定义。
“对于类型Math”
random()
未定义
任何解决方案?
答案 0 :(得分:2)
你必须致电
java.lang.Math.random()
因为您的班级名称也是数学,所以您必须指定包。
示例:
public class Math {
public static void main(String args []){
System.out.println("JDK MATH RANDOM " +java.lang.Math.random()); // refers to java.lang
System.out.println("My Math random implementation "+Math.random()); // refers to this class method, actually Math is redundant in this scope
}
public static double random(){
//some implementation
}
}
答案 1 :(得分:1)
如果您有自己的一个名为Math的课程,则必须消除您在使用时谈论的课程,例如: Java.lang.Math.random()。更简单的选项是更改类的名称。重用JDK中的名称是不好的做法,特别是来自java.lang包。