2016-03-07 1 views
1

Je suis un étudiant très nouveau à la programmation et ai fait un programme simple en java pour convertir des unités."classe X est public, devrait être en X.java" avec Ideone compilateur en ligne

Je suis sur un mac en utilisant ideone compiler online. Je reçois cette erreur

Voici mon code (ce qui est pour une mission, je travaille sur d'où le nom):

package assessmentOne.pkg1; 
import java.util.Scanner; 

// MY NAME Assessment One 


public class AssessmentOne{ 

    public static void main(String[] args) 
    { int choice; 

    do 

    { Scanner input = new Scanner(System.in); 
    System.out.println("1 = centimetre to inch, 2 = metres to feet, 3 = finish"); 
    choice = Integer.parseInt(input.next()); 

    if (choice == 1) 

     { 
     // converts centimetre to inch 
     System.out.println("centimetre to inch"); 
      double centimetre; 
      double inch; 

      inch = 0; 
      centimetre = Double.parseDouble(input.next()); 
      System.out.println("inch = centimetre * 0.3973"); 
     } 

    else if (choice == 2) 

     { 
     // converts metre to feet 
     System.out.println("metre to feet"); 
     double metre; 
     double feet; 

     feet = 0; 
     metre = Double.parseDouble(input.next()); 
     System.out.println("feet = metre * 3.28"); 
     } 

    else if (choice == 3) 

     { 
     // exits 
     break; 
     } 

    } while (choice != 3); 

    } 
    } 
+0

Renommez le fichier 'AssessmentOne.java' – user2004685

+0

Bienvenue sur Stack Overflow! J'ai édité le titre de votre question pour inclure le message d'erreur exact, donc plus de gens ayant des connaissances sur le sujet le verront. J'ai également indenté votre échantillon de code de 4 espaces afin qu'il rende correctement - s'il vous plaît voir l'aide à l'édition pour plus d'informations sur le formatage. Enfin j'ai mis le fait que vous utilisez le compilateur en ligne Ideone en gras, car je pense que c'est important dans ce cas. Bonne chance! – Yirkha

+0

On dirait qu'idéone insiste sur le fait que votre classe publique doit s'appeler Main. Voir cette réponse ici - vous pouvez regarder dans un environnement de développement complet approprié, comme Eclipse ou IntelliJ stackoverflow.com/questions/22340309/ – user1717259

Répondre

1

Je ne suis pas sûr, mais cette erreur apparaît généralement lorsque le le nom du fichier java est différent du nom de la classe. Lorsque vous déclarez votre classe en tant que public le fichier java qui le contient doit avoir le même nom que .java.

Exemple

public class Example {} 

Example.java

+0

J'ai changé de AssessmentOne public class { à AssessmentOne.java public class { et mon erreur est erreur de compilation \t temps: 0 mémoire: 0: 0 Main.java:5: erreur: '{' attendue AssessmentOne.java public class { ^ 1 erreur Merci pour la –

+0

Non, vous devez utiliser 'public cla ss AssessmentOne {'et le fichier dans lequel vous l'avez écrit doit s'appeler' AssessmentOne.java'. Le nom du fichier doit être le même que celui de la classe publique. –

0

Retirez du public en ligne ci-dessous du code et ça marche tout de suite.

"public class AssessmentOne {"