Math.random() в Java

У меня есть 2 класса в одном проекте, и я использую Math.random() в обоих из них. В первом все работает отлично, но во втором говорится, что random() не определено. "Метод random() не определен для типа Math"

Любые решения?

2 ответа

Вы должны позвонить

java.lang.Math.random() вызывает ваше имя класса также Math, поэтому вам нужно указать пакет.

Пример:

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 ****** random(){ //some implementation }
}


Если у вас есть собственный класс под названием Math, вы должны устранить тот факт, о котором вы говорите, в точке использования, например Java.lang.Math.random(). Более простой вариант - изменить имя вашего класса. Это плохая практика повторного использования имен из JDK, особенно из пакета java.lang.

licensed under cc by-sa 3.0 with attribution.