Cześć
Mam zadanie, które sprawia mi duże problemy. Spróbuje opisać z czym się zmagam, uczę się dopiero jezyka javy, więc prosiłbym o wskazówki.i wyrozumiałość
Stwórzyłem klasy:
- zwierze, która ma imię, wiek i może dać głos
- pies, która ma rasę i daje głos.
- lis, która ma kolor i daje głos
- kot, która ma umaszczenie i daje głos
Mam kilka probłemów:
- Jak znaleŹć zwierze które jest najstarsze??
- Mam kłopot z tym, że nie wiem jak sobie poradzić by zabiezpieczyć klasę zwierzę aby nie dało sie stworzyć zwierzęcia z wiekiem ujemnym, a jeśli jest wiek ujemny to niech rzuci wyjatkiem InvalidAnimalAgeException, przeprowadzić tutaj symulacje z trycatch i pokazać przechwycenie wyjatku i jego obsluge.
- Rasy psa powinny byc typem wyliczeniowym, dostepne sa rasy Psa: Jork, Jamnik, Wilk.
Póki co stworzyłem wymienione klasy czyli zwierze, pies, lis, kot i klasę Main, a dalej utknąłem. Proszę o wskazówki bardziej doświadczonych Kolegów.
public class Zwierze {
private String imie;
private int wiek;
public Zwierze(String imie, int wiek) {
this.imie = imie;
this.wiek = wiek;
}
public String getImie() {
return imie;
}
public void setImie(String imie) {
this.imie = imie;
}
public int getWiek() {
return wiek;
}
public void setWiek(int wiek) {
this.wiek = wiek;
}
public void dajGlos(){
System.out.println("Daj głos");
}
@Override
public String toString() {
return "Zwierze{" +
"imie='" + imie + '\'' +
", wiek=" + wiek +
'}';
}
}
public class Kot extends Zwierze{
private String umaszczenie;
public Kot(String imie, int wiek) {
super(imie, wiek);
}
public void dajGlos() {
super.dajGlos();
System.out.println("miau miau");
}
@Override
public String toString() {
return super.toString()+ ", umaszczenie=" + umaszczenie;
}
public class Pies extends Zwierze{
private String rasa;
public Pies(String imie, int wiek) {
super(imie, wiek);
}
public void dajGlos() {
super.dajGlos();
System.out.println("hau hau");
}
@Override
public String toString() {
return super.toString()+ ", rasa=" + rasa;
}
}
public class Lis extends Zwierze{
private String kolor;
public Lis(String imie, int wiek) {
super(imie, wiek);
}
public void dajGlos() {
super.dajGlos();
System.out.println("lititititit");
}
@Override
public String toString() {
return super.toString()+ ", kolor=" + kolor;
}
}