它是一種標準的代碼或其他替代方法嗎?我想了一下我寫的代碼。最後放棄了,並認爲與你們檢查。是否使用javaargs而不是在Java中重載的標準方式?
這是我的場景。
private String functionNameXYZ(String a,String b) {
//Logic goes here
}
private String functionNameXYZ(String a,String b,String c) {
//Same logic goes here , Nothing much difference because of String c
}
所以我壽 ught跳過了同樣的目的兩種功能,我創建瞭如下一個單一的功能。
private String functionNameXYZ(String a, String b,String... c){
return performlogic(a,b,(c.lenght!=0)? c[0]:null);
}
private String performlogic(String a,String b, String c) {
//logic , return "string"
}
哪一種是標準的編碼方式?是不是將邏輯分解爲新方法而不是重複[第二種情況]還是其他方式?請建議您是否找到更好的方法?
如果您期待任意數量的參數(如'String.format'),則使用可變參數,但如果期望參數的常量和特定順序,則使用重載。 Plus:甚至可以使用重載指定不同的類型;這是不容易的,可變參數。 – GiantTree
最重要的事情就是超負荷。儘管如此,過載意味着不同的處理或邏輯。這纔是重點。 –