2012-09-23 37 views
1

我一直desigining班方式如下:從構造函數傳遞許多參數是否會減慢程序速度?

public class add{ 
     private int firstEntry; 
     private int secondEntry; 

     public add(int a , int b){ 
      this.firstEntry= a; 
      this.secondEntry=b 
     } 

     public int makeAddition(){ 
      return firstEntry+secondEntry; 
     } 

} 

程序是否這種格局在Java減慢程序?

+0

我不認爲方法名稱和參數會導致性能問題。它可以增加文件的大小。 – kannanrbk

+0

比較什麼?還有,不。 – Keppil

+0

如果你有速度問題,分析應用程序並找到瓶頸,不要再猜你的代碼 – MadProgrammer

回答

6

首先 - 2個參數不是很多!其次,不,它不會減慢程序 - 你會使用哪種「更快」的替代方案?

專注於設計好的,可讀的代碼,然後如果(且僅當)您需要優化,您可以稍後再做。設計好的可讀代碼的能力要重要得多,在這個階段你應該關注這個問題。

如果你有參數負載(你說15,這是很多),然後可能看看builder pattern。與性能無關,但當你在構造函數中有大量參數時,以這種方式做事通常會更好,因爲這意味着當有人調用它時,他們可以清楚地看到他們每次引用哪個參數。

+0

實際上有很多參數可以達到15.現在,我在程序速度方面有問題。 – thetna

+0

@thetna請參閱編輯 - 完全沒有速度差異,但由於其他原因,構建器模式可能是更好的替代方案。 – berry120

+0

用於構建器模式。還要注意,向它們的構造函數/方法調用中添加額外的參數可能是性能問題,但2個參數不是問題。 – alexsmail

3

從構造函數傳遞許多參數不會減慢程序的運行速度,它會減慢需要讀取的程序員。

0

傳遞2個參數不是很多,它不會太慢。作爲代碼的替代方案,您可以有:

public class add{ 
    public int add(int a, int b){ 
     return a+b; 
    } 
} 
相關問題