2016-02-24 32 views
0

我的老師走了2天,我被困應被宣佈爲文件名

我不斷收到這2個錯誤,當我嘗試運行主文件

U:\Computer science\AP Computer Science\10.boolean\lab10_boolean\PassRunner.java:8: error: class Lab10a is public, should be declared in a file named Lab10a.java

U:\Computer science\AP Computer Science\10.boolean\lab10_boolean\PassRunner.java:12: error: constructor PasswordCheck in class PasswordCheck cannot be applied to given types;

在我的主文件中的代碼是

import static java.lang.System.*; 

public class Lab10a 
{ 
    public static void main(String args[]) 
    { 
     PasswordCheck test = new PasswordCheck(); 
     test.check(); 
    } 
} 

並命名爲PassRunner.java

我在其他類文件的代碼是

import java.util.Scanner; 
import static java.lang.System.*; 

class PasswordCheck 
{ 
    private String password = "mchammergohammer"; 

    public PasswordCheck(String word) 
    { 
     word = ""; 
    } 

    public void check() 
    { 
     Scanner keyboard = new Scanner(System.in); 
     int x = 0; 
     String tmpPas = ""; 

     do{ 
      out.println("THIS LEVEL OF SECURITY REQURES A PASSWORD"); 
      tmpPas = keyboard.next(); 
      if(tmpPas == password) 
       out.println("ACCESS GRANTED"); 
      else 
       x++; 
       out.println("ACCESS DENIED"); 
     }while(tmpPas != password || x <= 10); 
     if(x >= 10); 
      out.println("YOU HAVE REACHED THE MINIMUM AMOUNT OF ATTEMPTS"); 

    } 

    public void setPass() 
    { 
     out.println("Enter your current password: "); 
    } 
} 

,它被命名爲PassWordCheck.java

伊夫看了看其他的代碼,我仍然不明白,因爲我我仍然對編碼感興趣,可能有人請幫助

+1

這些錯誤信息非常清晰。 Java要求公共類必須位於具有相應名稱的文件中,所以Lab10a類應該放在名爲Lab10a.java的文件中。 – Pointy

+0

我可以只更改類名到文件的文件名 – Emmanuel

+0

是的,你可以改變類名。 – Pointy

回答

0

只需將您的Lab10a類定義移動到名爲Lab10a.java的單獨java文件並將其導入到其他使用它的類中即可。

相關問題