2014-11-06 82 views
1

在我的主包中,我有兩個類和一個包含更多類的文件夾。其中一個外部類是一個單例類,我需要從其他一些類(它們位於子文件夾內)訪問單個類。我可以從同級別的類訪問單例,但它在其中一個子類中不會讓我像其他人那樣訪問它。我該如何解決這個問題?這裏只是櫃面是一個佈局:在不同的文件夾中訪問一個類

com.blah 
    [Connect] 
     Ftp.java //I want to be able to say AppConfig.getInstance().blah() in this class 
    App.java  //I can say AppConfig.getInstance().blah() in here just fine 
    AppConfig.java 

編輯這是AppConfig的Singleton類的頂部:

class AppConfig { 

    private static AppConfig config = new AppConfig(); 

    private AppConfig(){} 

    public static AppConfig getInstance(){ 
     return config; 
    } 

    static Properties prop = new Properties(); 
... 

編輯意識到我需要的AppConfig類聲明的公共盈。謝謝提醒夥計。

+0

只要它的包可見,就可以導入它,但爲什麼不在app.blah構建ftp實例時將appconfig實例作爲構造函數參數傳遞? – 2014-11-06 17:04:46

回答

5

將其導入您的Ftp班。

import com.blah.AppConfig; 

(確保Ftppublic類,當你做到這一點爲好。)

您不必導入在同一個文件夾中的類,因爲他們被認爲是在同一個包裏。您目前所在的軟件包之外的任何內容都必須導入。

+0

這就是我原先想的,但由於某種原因,它不會允許我。爲了您的緣故,我更新了AppConfig類的頂部,讓您更好地瞭解最新進展 – erp 2014-11-06 17:52:47

+0

nvm發現錯誤:) – erp 2014-11-06 17:55:23

0

Ftp.java必須是一個公共類,如果它的單,以便它可以被訪問無處不

如果其公共那麼就應該有訪問它外面只是它導入這些類,你要沒問題

import com.blah.AppConfig; 
相關問題