1. Funcții/metode în Java
Ați învățat deja o mulțime de comenzi Java, ceea ce înseamnă că puteți scrie niște programe destul de complexe. 10, 20, 30 de linii de cod într-un program nu este un program foarte mare, nu?
Dar un program de peste 100, acum este mare și poate fi destul de dificil de înțeles codul. Există ceva ce puteți face pentru a simplifica cumva scrierea și citirea programelor care au mult cod?
Da, iar metodele (sau funcțiile) ne vor ajuta în acest sens.
Ce este o metodă? Pune foarte simplu, o metodă este un grup de comenzi care are un nume unic . Cu alte cuvinte, punem mai multe comenzi într-un grup și îi dăm un nume unic. Și gata - metoda este gata.
Exemplu:
Fără o metodă | Cu o metodă |
---|---|
|
|
În programul din coloana din stânga, repetăm același cod de trei ori - am făcut acest lucru în mod intenționat pentru a ilustra un punct. Dar în programul din dreapta, am mutat codul repetat într-o metodă separată și i-am dat un nume unic - printWiFi
.
Și în loc de codul relocat, apelăm printWiFi()
metoda de 3 ori.
Când se rulează programul din coloana din dreapta, de fiecare dată când metoda printWiFi()
este executată, toate comenzile din interiorul printWiFi()
metodei sunt executate. Tocmai am creat o nouă comandă (metodă), combinând mai multe comenzi într-un singur grup.
Orice cod poate fi împărțit în metode separate. Acest lucru se face pentru a simplifica lucrurile: ideea este că este mai bine să aveți multe metode mici decât una mare. În curând vei fi surprins că a existat vreodată un moment în care ți-ai scris propriile programe fără să-ți scrii propriile metode.
2. Declararea unei metode în Java
Deci, cum scrieți corect metoda?
public static void name()
{
method body
}
Există o mulțime de nuanțe de luat în considerare atunci când declarați (creați) o metodă, dar vom începe cu elementele de bază. Cum putem declara cea mai simplă metodă? O declarație simplă de metodă arată astfel:
Unde name
este numele unic al metodei și method body
reprezintă comenzile care alcătuiesc metoda. Semnificația cuvintelor public
, static
și void
va fi discutată mai târziu.
După ce am creat o metodă, o putem apela în celelalte metode ale noastre. Un apel de metodă arată astfel:
name();
Unde name
este numele unic al metodei pe care vrem să o apelăm, adică metoda ale cărei comenzi vrem să le executăm când ajungem la apelul metodei.
Când programul ajunge la apelul metodei, pur și simplu va intra în metodă, va executa toate comenzile, va reveni la metoda inițială și va continua execuția.
După cum probabil ați ghicit până acum, majoritatea comenzilor pe care le-am învățat până acum sunt doar metode scrise de alți programatori pentru a ne ușura viața: , , etc.System.out.println()
Thread.sleep()
O metodă poate conține apeluri către alte metode:
Cod | Notă |
---|---|
|
Apelați printWiFi10Times() metoda Declarați printWiFi10Times metoda Apelați printWiFi() metoda de 10 ori într-o buclă Declarați printWiFi metoda Afișați textul pe ecran:
|
3. Fapte despre metode
Iată mai multe informații despre metode:
Faptul 1. O metodă face întotdeauna parte dintr-o clasă.
O metodă poate fi declarată numai într-o clasă. O metodă nu poate fi declarată în interiorul unei alte metode. O metodă nu poate fi declarată în afara unei clase.
Faptul 2. Numele unei metode nu are sens sacru.
Nu contează ce metode sunt numite - asta nu afectează nimic. Metoda principală este o metodă la fel ca toate celelalte. Doar că acest nume a fost ales pentru metoda din care mașina Java va începe execuția programului. Nu este nimic magic în asta.
Faptul 3. Ordinea metodelor dintr-o clasă nu contează.
Puteți scrie metodele într-o clasă în orice ordine - acest lucru nu va afecta în niciun fel execuția programului. Exemplu:
Cod | |
---|---|
|
|
Faptul 4. Variabilele din interiorul unei metode nu sunt legate în niciun fel de variabilele altor metode.
Ce se intampla in Vegas, ramane in Vegas. Iar variabilele declarate în interiorul unei metode rămân în interiorul metodei.
Variabilele cu aceleași nume pot fi declarate în două metode adiacente, iar aceste variabile nu sunt legate între ele în niciun fel.
4. Numele metodelor
Se știe de mult că cele două probleme cele mai dificile în programare sunt alegerea numelor potrivite pentru metode și alegerea numelor potrivite pentru variabile.
De fapt, aproape o întreagă știință a apărut cu privire la modul de a numi corect metodele. Și fiecare limbaj de programare are propriile standarde. În Java, este obișnuit să urmați aceste principii:
Principiul 1. Numele unei metode ar trebui să descrie pe scurt ceea ce face metoda.
Apoi, un alt programator care vă citește codul se poate baza pe numele metodei pentru a ghici ce face codul. El sau ea nu va trebui să se uite de fiecare dată la codul metodelor apelate. Și scopul metodelor este mai ușor de reținut.
Amintiți-vă că este folosit pentru a „pune programul în stare de adormire” și este folosit pentru a „citi următorul întreg”. Convenabil, nu?Thread.sleep()
Scanner.nextInt()
Principiul 2. Numele unei metode poate fi mai multe cuvinte.
Cu toate acestea, există mai multe limitări atunci când faceți acest lucru:
- Nu puteți avea spații într-un nume de metodă: toate cuvintele sunt scrise împreună.
- Fiecare cuvânt este scris cu majuscule, cu excepția primului.
- Numele unei metode începe întotdeauna cu o literă mică
Amintiți-vă printWiFi10Times
metoda. Ce înseamnă acest nume? „Afișează cuvântul „WiFi” de 10 ori”. Nu ar trebui să includeți o mulțime de cuvinte în numele unei metode: numele ar trebui să reflecte însăși esența sa.
Acest standard pentru metodele de denumire se numește CamelCase (Literele mari sunt ca cocoașele unei cămile).
Principiul 3. Numele unei metode începe cu un verb.
O metodă face întotdeauna ceva, așa că primul cuvânt dintr-un nume de metodă este întotdeauna o acțiune.
Iată câteva nume proaste pentru metode: home
, cat
, car
, train
, ...;
Câteva nume bune sunt: run
, execute
, print
, read
, write
,...
Principiul 4. Folosiți numai litere și cifre latine.
Java are suport excelent pentru diferite limbi. Puteți scrie numele variabilelor, metodelor și claselor în rusă, precum și în chineză - totul va funcționa!
Dar! Cât timp ar trebui să studiezi Java, dacă System.out.println()
metoda ar fi scrisă în chineză? Mult mai mult decât acum, nu? Acesta este primul punct.
În al doilea rând, multe echipe de dezvoltare software sunt internaționale. Un număr foarte mare de biblioteci Java sunt folosite de programatori din întreaga lume.
Prin urmare, este recomandat să folosiți numai litere și cifre latine în numele metodelor.
GO TO FULL VERSION