Czy jest jeszcze (obejście), aby zdefiniować synonimy nazw w Javie, podobne do poniższej definicji w Scali?Typ synonimy w java
type Row = List[Int];
Choć może nie być dokładnie takie same, myślałem o następującym kodzie (I otrzymuje listy z ArrayList, ponieważ lista jest interfejs w języku Java):
public class Row extends ArrayList<Integer>{}
Czy czy istnieje inny sposób na uzyskanie mechanizmu synonimów typów w języku Java?
Nie sądzę. "Rozszerzenia" to najlepsze, co możesz zrobić. Ponieważ 'List' (nie 'List ') jest interfejsem, myślę, że to co napisałeś może być wystarczająco dobre, ale nie jestem pewien. Jeśli zrobisz to za pomocą _concrete_ type, wtedy, aby uzyskać typ, który jest jak najbardziej zbliżony do bycia równoważnym, musisz również redeclare wszystkich konstruktorów i uczynić je po prostu 'super (argumenty);'. –
ajb
Nie, nie ma mowy. Twoja metoda jest uważana w niektórych kręgach za anty-wzór. –
@ajb Zmieniłem listę na ArrayList. Masz rację, List jest interfejsem w java. – qartal