Cześć,
Mam program który nie wykonuje się poprawnie z powodu źle zdefiniowanego wyjątku.
Pomoże ktoś albo zaproponuje lepsze rozwiązanie ?
package parkiet;
class ZaDuzoObrotowException extends Exception{
public void ZaDuzoObrotowException(){
System.out.println("za duzo obrowĂłw");
}
}
interface Obrot{
public void wykonaj();
}
class WPrawo implements Obrot{
public void wykonaj(){
System.out.println("obrot w prawo");
}
}
class WLewo implements Obrot{
public void wykonaj(){
System.out.println("obrot w lewo");
}
}
class Baletnica{
int wymiar = 5;
int obrot = 0;
Obrot[] obroty;
public void Baletnica(){
this.wymiar = 2;
}
public void Baletnica(int wymiar){
this.wymiar = wymiar;
obroty = new Obrot[wymiar];
}
public void obrot(Obrot obrot) throws ZaDuzoObrotowException{
this.obroty[this.obrot] = obrot;
this.obrot++;
}
public void zatancz(){
for(int i=0; i<=wymiar; i++){
obroty.wykonaj();
}
}
}
class main {
public static void main(String[] args) {
Baletnica baletnica = new Baletnica();
try{
baletnica.obrot(new WLewo());
baletnica.obrot(new WPrawo());
}
catch(ZaDuzoObrotowException e) {
System.out.println(e);
}
baletnica.zatancz();
}
}
Wyskakuje mi Exception in thread "main" java.lang.NullPointerException