2015-04-06 63 views
0

所以我的代碼的Java Singleton設計模式

import java.util.Comparator; 
public class PersonFullNameComparator implements Comparator<Person> { 
    @Override 
    public int compare(Person arg0, Person arg1) { 
     return arg0.getFullName().compareTo(arg1.getFullName()); 
    } 
} 

我前面已經閱讀有關單身這個小位和不太明白,我不知道去哪裏或啓動。

那麼,我會如何使這個單身?只是這堂課。

編輯:這只是爲了練習,沒有做任何實際的事情。由於不同的例子,更多的好奇心。

+0

我真的不認爲你需要。只需在需要時創建實例 – MadProgrammer

回答

0

正如MadProgrammer已經說過的,你並不需要它。比較器重量輕,所以無論何時需要時都不會出現問題。

但是因爲你的班級體重很輕,而且是線程安全的(完全沒有實例狀態),所以創建一個singleton並沒有什麼壞處。它也很簡單:

import java.util.Comparator; 
public class PersonFullNameComparator implements Comparator<Person> { 
    // This is your singleton 
    public static final PersonFullNameComparator INSTANCE = new PersonFullNameComparator(); 

    // This is, if you want to forbid creating other instances 
    private PersonFullNameComparator() {} 

    @Override 
    public int compare(Person arg0, Person arg1) { 
    return arg0.getFullName().compareTo(arg1.getFullName()); 
    } 
}