Metody w Javie mogą być:
- - statyczne
- -publiczne lub prywatne, lub chronione
- -mogą zwracać różne typy danych, mogą też być typu void.
Jeżeli metoda nie jest statyczna, to musi być wywoływana na rzecz jakiegoś obiektu.
Załóżmy, że mamy klasę Bank, a w niej metodę publiczną zwracającą stan konta.
class Bank{
[.....]
private int cash;
public int seeCash(){return cash;}
}
Żeby wywołać tą metodę w innej klasie(poza klasą Bank), musimy utworzyć instancję klasy Bank, zainicjalizować niezbędne zmienne w niej umieszczone, a na samym końcu wywołać metodę.
Bank account = new Bank(10);
int cash = account.seeCash();
W tym przykładzie metodę wywołujemy na rzecz stworzonej wcześniej instancji obiektu. Jeżeli ww. metoda była by statyczna, nie musielibyśmy tworzyć instancji obiektu, wystarczyłoby się tylko odwołać do nazwy klasy.
Bank.seeCash();
Używając metod statycznych należy pamiętać o kilku kluczowych rzeczach. W internecie na pewno znajdziesz materiały mówiące o tym.
W Javie nie ma znaczenia, na jakim miejscu jest dane słowo kluczowe, musi być ono jednak przed nazwą metody.
public void myVoid();
void public myVoid();
Obie deklaracje są poprawne.
Jeżeli chodzi o zmienne:
Zmienna może być zadeklarowana w klasie, wtedy mają do niej dostęp wszystkie metody, które się w niej znajdują.
Jeżeli zmienną zadeklarujemy w metodzie, to jest ona widoczna tylko i wyłącznie tam.
Java to obiektowy język programowania, więc prawie wszystko co robimy opiera się na klasach, metodach, konstruktorach etc. Zauważ, że metoda main również znajduje się w pewnej klasie.
Mam nadzieje, że choć trochę pomogłem Ci zrozumieć to zagadnienie.
Dalej służę pomocą ;)