2013-11-21 142 views
0

Java新手,使用模板工作。任何想法有什麼不對?我正在使用Netbeans IDE並將java文件上傳到Linux機器,然後在那裏編譯。Java編譯錯誤:找不到符號(EraserThread)

PasswordField.java:42: cannot find symbol 
symbol : class EraserThread 
location: class PasswordField 
    EraserThread et = new EraserThread(prompt); 
^
PasswordField.java:42: cannot find symbol 
symbol : class EraserThread 
location: class PasswordField 
    EraserThread et = new EraserThread(prompt); 
         ^
2 errors 

public class PasswordField { 
public static String readPassword (String prompt) { 
    EraserThread et = new EraserThread(prompt); 
    Thread mask = new Thread(et); 
    mask.start(); 

    BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); 
    String password = ""; 

    try { 
    password = in.readLine(); 
    } catch (IOException ioe) { 
    ioe.printStackTrace(); 
    } 
    // stop masking 
    et.stopMasking(); 
    // return the password entered by the user 
    return password; 
} 
} 
+1

那麼EraserThread類在哪裏聲明? –

+1

import EraserThread class .. – subash

+0

對不起,我很新的這個,但這是一個模板在網上找到,我得到的錯誤是說它找不到類...我只是應該創建一個空的EraserThread類?模板就是這樣給出的。 – Erin

回答

0

您需要首先創建(或複製)EraserThread類。這是代碼。你會想要去你的項目瀏覽器,並在你創建上述類的相同包中創建一個名爲「EraserThread」的新類。然後將其粘貼到該類中:

import java.awt.event.KeyListener; 
import java.io.*; 

public class EraserThread implements Runnable { 
    private boolean stop; 

    /** 
    *@param The prompt displayed to the user 
    */ 
    public EraserThread(String prompt) { 
     System.out.print(prompt); 
    } 

    /** 
    * Begin masking...display asterisks (*) 
    */ 
    public void run() { 
     stop = true; 
     while (stop) { 
      System.out.print("/010*"); 
      try { 
       Thread.currentThread().sleep(1); 
      } catch(InterruptedException ie) { 
       ie.printStackTrace(); 
      } 
     } 
    } 

    /** 
    * Instruct the thread to stop masking 
    */ 
    public void stopMasking() { 
     this.stop = false; 
    } 
} 

一旦創建了類,您應該可以運行代碼。

代碼源:http://code.google.com/p/testsome/source/browse/trunk/test/src/EraserThread.java?r=3

編輯: 我不知道,如果這個類已經在其他地方存在。您可以在不創建它的情況下導入它,但我不確定。只要自己創建這個類,你應該沒問題,而不必通過代碼導入它。

+0

沒有該類不存在,非常感謝!新來java,只能用PHP ..謝謝!!!! – Erin

+0

嗨,我剛剛開始添加課程。雖然我沒有收到錯誤,但我確實收到了... – Erin

+0

010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */0010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 */010 * – Erin