Witam ;) Dopiero zaczynam swoją przygodę z programowaniem w Java, lecz jak to zwykle bywa mam kilka braków, które nie pozwalają mi napisać choćby prostego programu, który miałby działać tak jak ja to sobie wyobrażam :)
Mianowicie tym razem zabrałem się za taki malutki kod (Wkleje cały, ponieważ jest króciutki).
Homework.java
import java.util.*;
public class Homework {
public static void main(String[] args){
Ulamek rhcp = new Ulamek(5, 99);
rhcp.wynosi();
}
}
Ulamek.java
public class Ulamek {
public static int a;
public static int b;
public Ulamek(int startowaA, int startowaB) {
startowaA = a;
startowaB = b;
System.out.println("Stworzono ulamek: " + a + "/" + b);
return a;
return b;
}
public static int wynosi() {
int wynik = this.a / this.b;
System.out.println("Ulamek " + a + "/" + b + "wynosi: " + wynik);
}
}
Błędy, które zwraca kompilator:
1. cannot return a value from method whose result type is void (return a;)
2. cannot return a value from method whose result type is void (return b;)
3. non static variable cannot be referenced from static context ( int wynik = this.a / this.b; )
4. non static variable cannot be referenced from static context ( int wynik = this.a / this.b; )
Otóż jest to któreś z kolei moje podejście do napisania czegoś prostego, co tylko sprawiło bym przyswoił sobie pewne zasady programowania w javie, lecz po raz kolejny zacinam się na zmiennych. Problem jak widać polega na tym, iż chcę wykorzystywać zmienne utworzone na rzecz jednej klasy ( class Ulamek ) w drugiej ( public static int wynosi() ).
Zazwyczaj nie tworzę nowych tematów z problemami, które mnie gnębią lecz chciałbym by ktoś pokazał mi gdzie leży błąd/y ;)
Pozdrawiam oraz z góry dziękuję za odpowiedzi.