metody dostępu w interfejsie

0

Cześć, dopiero uczę się Javy i mam pytanie dotyczące interfejsów. Czy tworząc interfejs mam tam również umieszczać sygnatury metod dostępowych (te zaznaczone w kodzie)? Interfejs nie ma mieć atrybutów więc czy powinien mieć te metody?

 Interface IVehicle {
int range(); //zasieg
double fuelNeeded(int km); //
int capacity();

//czy to umieszczać metody dostępowe???????????
int getFuelCap();
void setFuelCap(int fuel);
int getPassengers()
void setPassengers(int pass);
} 
0

Nie ma prostej odpowiedzi. Interfejs powinien zawierać wszystko co powinien zawierać. Niemniej w ogóle istnienie getterów i setterów jest zwykle sygnałem ze coś może być nie tak z kodem, bo to oznacza że wymuszasz na wszystkich implementacjach istnienie takich pól.

1

Czasami chcemy, żeby interfejs jakiś getter posiadał, np możemy mieć interfejs PrimeryKey która by nam oznaczał, że dowolna implementacja musi mieć swój primary key i wówczas interfejs by posiadał publiczny getter getPrimaryKey.

1 użytkowników online, w tym zalogowanych: 0, gości: 1