Languages
[Edit]
PL

Java - metody dla pocz─ůtkuj─ůcych - cz─Ö┼Ť─ç 2

4 points
Created by:
Bartek
2110

Cz─Ö┼Ť─ç pierwsz─ů mo┼╝na znale┼║─ç tutaj:┬áJava - metody dla pocz─ůtkuj─ůcych - cz─Ö┼Ť─ç 1

Ten post to kontynuacja wst─Öpu do metod w javie dla pocz─ůtkuj─ůcych.

Warto te┼╝ wspomnie─ç, ┼╝e metody powinno nazywa─ç si─Ö jako rzeczownik - czyli co robi. Przyk┼éady metod z javy to:┬áJava - methods naming convention, ideas and examples. Post jest w j─Özyku angielskim, ale ┼éatwo mo┼╝na sobie przet┼éumaczy─ç ca┼é─ů list─Ö, ale s─ů to s┼éowa do┼Ť─ç proste, wi─Öc my┼Ťl─Ö, ┼╝e nie powinno by─ç wi─Ökszego problemu.

Przykład

public class MetodaPrzyklad {

    public static void main(String[] args) {

        int ocenaJanusza = 5;
        int ocenaMariusza = 4;

        dodajOcenyUczniow(ocenaJanusza, ocenaMariusza);
    }

    static void dodajOcenyUczniow(int ocenaUcznia1, int ocenaUcznia2) {

        int sumaOcen = ocenaUcznia1 + ocenaUcznia2;

        System.out.println("Suma ocen uczni├│w: " + sumaOcen);
    }
}

Wynik:

Suma ocen uczni├│w: 9

W tym przyk┼éadzie przekazujemy do metody 2 argumenty, s─ů nimi 2 oceny uczni├│w Janusza i Mariusza. Metoda ma proste zadanie, czyli sumowanie obu ocen uczni├│w. Plus pozwoli┼éem sobie wypisa─ç sume ocen do konsoli.

Przykład

public class MetodaPrzyklad {

    public static void main(String[] args) {

        int ocenaJanusza = 5;
        int ocenaMariusza = 4;
        dodajOcenyUczniow(ocenaJanusza, ocenaMariusza);

        int ocenaMalgosi = 5;
        int ocenaJasia = 5;
        dodajOcenyUczniow(ocenaMalgosi, ocenaJasia);
    }

    static void dodajOcenyUczniow(int ocenaUcznia1, int ocenaUcznia2) {

        int sumaOcen = ocenaUcznia1 + ocenaUcznia2;

        System.out.println("Suma ocen uczni├│w: " + sumaOcen);
    }
}

Wynik:

Suma ocen uczni├│w: 9
Suma ocen uczni├│w: 10

Ten przyk┼éad pokazuje nam, ┼╝e metod─Ö mo┼╝emy u┼╝y─ç wi─Öcej ni┼╝ 1 raz. I nie musimy duplikowa─ç logiki dodawania. To tylko bardzo prosty przyk┼éad obrazuj─ůcy jak fajne i por─Öczne mog─ů by─ç metody.

Przykład

public class MetodaPrzyklad {

    public static void main(String[] args) {

        int ocenaJanusza = 5;
        int ocenaMariusza = 4;
        int sumaOcen1 = ocenaJanusza + ocenaMariusza;

        System.out.println("Suma ocen uczni├│w: " + sumaOcen1);

        int ocenaMalgosi = 5;
        int ocenaJasia = 5;
        int sumaOcen2 = ocenaMalgosi + ocenaJasia;

        System.out.println("Suma ocen uczni├│w: " + sumaOcen2);
    }
}

Output:

Suma ocen uczni├│w: 9
Suma ocen uczni├│w: 10

Ten sam przyk┼éad, tylko bez metody. Wykonamy oba obliczenia bez u┼╝ycia metod. Teraz wyobra┼║ sobie, ┼╝e wczytujemy te oceny z pliku i jest ich 200 par. Dostajemy zadanie zmodyfikowania operacji, zamiast sumy ocen, manager prosi nas o pomno┼╝enie obu ocen i wypisania wyniku do konsoli. Czyli musimy zmieni─ç operacj─Ö┬ádodawania na operacje mno┼╝enia. Dodatkowo zmieni─ç musimy "Suma ocen uczni├│w" na "Wynik mno┼╝enia ocen uczni├│w". Je┼Ťli korzystamy z metody to zmieniamy w jednym miejscu w kodzie "Suma" na "Wynik mno┼╝enia" i tak┼╝e w 1 miejscu┬áw kodzie:

int sumaOcen = ocenaUcznia1 + ocenaUcznia2;

na

int wynikMnozeniaOcen = ocenaUcznia1 * ocenaUcznia2;

A je┼Ťli nie korzystamy z metod, tylko robimy to na piechot─Ö to mamy aktualnie 200 zduplikowanych operacji, kt├│re musimy r─Öcznie modyfikowa─ç :). Czy widzisz ju┼╝ potencja┼é jaki kryje w sobie u┼╝ywanie metod?

Oczywi┼Ťcie kto┼Ť sprytnie mo┼╝e powiedzie─ç "mog─Ö u┼╝y─ç globalnego replace w Intellij IDEA lub notepad++, aby zamieni─ç wszystkie Stringi i operacje dodawania na mno┼╝enie." - tak mo┼╝esz, ale to jest rozwi─ůzywanie problemu na oko┼éo :D, serio. Program b─Ödzie bardzo czytelny, re-u┼╝ywalny, gdy b─Ödziemy u┼╝ywa─ç┬ádobrze nazwanych metod, kt├│re┬árealizuj─ů swoje┬ázadanie. Dodatkowym atutem metod jest to, ┼╝e mo┼╝na je testowa─ç (unit testy), pod warunkiem, ┼╝e s─ů┬ádobrze napisane. Do tej kwestii, wr├│cimy za jaki┼Ť czas.

Przykład

public class MetodaPrzyklad {

    public static void main(String[] args) {
        
        dodajOcenyUczniow(5, 4); // ocenaJanusza = 5, ocenaMariusza = 4
        
        dodajOcenyUczniow(5, 5); // ocenaMalgosi = 5, ocenaJasia = 5
    }

    static void dodajOcenyUczniow(int ocenaUcznia1, int ocenaUcznia2) {

        int sumaOcen = ocenaUcznia1 + ocenaUcznia2;

        System.out.println("Suma ocen uczni├│w: " + sumaOcen);
    }
}

Wynik:

Suma ocen uczni├│w: 9
Suma ocen uczni├│w: 10

W tym przyk┼éadzie nie tworzymy sobie zmiennych┬áz imionami uczni├│w, tylko przekazujemy je odrazu do metody. Tutaj ju┼╝ wida─ç jak bardzo kod nam si─Ö upro┼Ťci┼é, oczywi┼Ťcie to kwestia gustu i jak lepiej Ci si─Ö pisze┬ái czyta kod. Na pocz─ůtku lepiej chyba wybra─ç sobie ┼Ťci─Özk─Ö z nazywaniem bardzo dok┼éadnie wszystkich zmiennych, dlatego, ┼╝e idzie si─Ö du┼╝o szybciej odnazle┼║─ç w swoim kodzie. Mniej b┼é─Öd├│w b─Ödzie si─Ö┬ápope┼énia─ç.

 

Donate to Dirask
Our content is created by volunteers - like Wikipedia. If you think, the things we do are good, donate us. Thanks!
Join to our subscribers to be up to date with content, news and offers.

Java dla pocz─ůtkuj─ůcych

Native Advertising
­čÜÇ
Get your tech brand or product in front of software developers.
For more information Contact us
Dirask - we help you to
solve coding problems.
Ask question.

ÔŁĄ´ŞĆ­čĺ╗ ­čÖé

Join