2016-10-05 2 views
-2

В настоящее время я следую за книгой по java, и я пытаюсь запустить этот код, и я получаю символ не найденной ошибки во всех математических методах, хотя математика была включена в стандартную java-библиотеку.Символы математического метода не найдены

public class Math{ 
    public static void main(String[] args){ 
     double root = Math.sqrt(17.0); 
     double angle = 1.5; 
     double height = Math.sin(angle); 

     double radians = Math.toRadians(180); 
     double degrees = Math.toDegrees(Math.PI); 
     long round = Math.round(Math.PI * 30); 

     System.out.println("Root: " + root); 
     System.out.println("Angle: " + angle); 
     System.out.println("Height: " + height); 
     System.out.println("Radians: " + radians); 
     System.out.println("Degrees: " + degrees); 
     System.out.println("Round: " + round); 
    } 
} 
+1

переименовывать класса или использовать полное имя для класса java 'Math' – Rogue

ответ

4

Но посмотрите, вы только перекрываться/затенения его

public class Math{ 

Это очень плохая практика, чтобы к этому, но если вы действительно хотите сделать это попробовать

java.lang.Math.sqrt(...) 
+0

. Итак, используя Math, поскольку мое имя класса java не разрешено? –

+0

Я бы описал его как «тень», а не переопределял (который поставляется с методом переопределения коннозаций). Но да, в этом проблема. –

+0

@MattBall Вы правы, даже когда я писал «overriden», я думал, что это не правильно (все еще не было достаточно кофе) –

Смежные вопросы