2016-10-19 40 views
-7

我是新來的java,我想知道是否有可能。但我從另一個班級調用這個方法。但參數給我一個很難的時間。我想在不帶參數的情況下調用這個方法,或者在沒有任何錯誤的情況下讓它進入另一個類。如何將此方法複製到沒有參數的方法?

public List<String> getApporDb(
     String servers, 
     String username, 
     String password, 
     Float critThreshold) throws Exception { 

     try { 
      //something 

      try { 
       // another thing 
       if (serverArray != null && serverArray.length > 0 && folders != null && folders.length > 0) { 

        logger.info("inside loop of CpuUtilization and MemoryUtilization"); 
        Float cpuUtilization = null; 

       List<String> memoList = new ArrayList<String>(); 
        for (String server : serverArray) { 
         memoList.add(server); 
} 
} 
} 
} 

本質上我想要在這個方法中間的arraylist到另一個類。

其他類

public void arrayList() { 

databaseClass dbc = new databaseClass(); 
dbc.getApporDb(String servers, 
     String username, 
     String password); 
// errors everywhere due to parameters form the line above. 

} 

錯誤消息:在該行 多個標誌 - appServerCpuDiskspaceutilizationMap不能被解析爲 可變 - 用戶名不能被解析爲一個變量 - 密碼不能被解析爲變量 - 服務器無法解析爲變量

+3

不能調用方法沒有它的參數,但是如果你自己寫了這個類,那麼你可以重載這些方法來創建一個沒有參數的方法。 – Gendarme

+0

@Gendarme你能告訴我一個超載的例子嗎?請。 –

+1

這就像是點了一份比薩餅,但沒有說什麼比薩餅,或者你想把它送到哪裏。你可能試圖在這裏以錯誤的方式解決問題。 – Siguza

回答

1

您可以使用其中一個類擴展該類,然後使用@Override創建該方法的新版本。然後,您將使用您的類,就像它是您擴展的類一樣:除了您重寫的方法外,它具有相同的方法和功能。 一個例子可能是這樣的:

甲級:

Public class A{ 
    public void printName(){ 
     System.out.println("A"); 
    } 
    public void test(){ 
     System.out.println("test"); 
    } 
} 

B類:

public class B extends A{ 
    @Override 
    public void printName(){ 
     System.out.println("B"); 
    } 
} 

主營:

public static void main(String[] args){ 
    B b = new B(); 
    A a = new A(); 
    a.printName(); -------- A 
    b.printName(); -------- B 
    b.test(); -------- test 
    a.test(); -------- test 
} 
+0

這將如何幫助?重寫不會讓他們減少參數的數量。但是,超載會。 – ChiefTwoPencils

5

總之 - 無。調用方法時,您需要提供所有參數。

+0

您可以在不帶參數的情況下編寫不同版本的方法,但如果不傳遞任何需要的參數,則無法調用現有方法。 – nhouser9

+0

@ nhouser9爲了創建循環,它需要其中一個參數。我將如何能夠複製它? –

+0

它不適用於他們的例子,但例外是'foo(T ... t)'。 – ChiefTwoPencils

相關問題