Метода у Јави није ништа друго до вишекратни део кода који се може извршити на захтев.
Методе се често називају функцијама и приметићете да се обе речи користе наизменично.
Преглед садржаја
Важност коришћења метода или функција
Програмери софтвера решавају проблем тако што га растављају на мање проблеме и решавају их како би решили проблем у целини. Ова идеја је довела до онога што је познато као модуларна архитектура. У овом приступу, програмери разлажу код на делове који се могу померати и извршавати да би решили већи проблем.
Методе су корисне јер су употребљиве на различитим инстанцама у целој апликацији. Рецимо да желите да креирате услужни метод за уклањање свих непотребних празнина из реченице. Да ли ће имати смисла писати логику сваки пут када вам је потребна негде у вашој апликацији?
Или има смисла креирати метод једном, а затим користити исти метод са различитим улазима на више места у вашој апликацији? Ово друго је очигледно боље и ефикасније.
И не само то, уз помоћ модификатора приступа у Јави, чак можете да контролишете које методе се заиста могу делити у апликацији, а које нису. Такође помаже да ваш код изгледа читљивије, организованије и структурираније.
Врсте метода у Јави
Постоје две врсте метода у Јави: кориснички дефинисане и унапред дефинисане методе. Кориснички дефинисане методе, као што име каже, експлицитно дефинише програмер. Пример кориснички дефинисаног метода може бити:
public int sum(int a, int b) { return a + b; }
С друге стране, унапред дефинисане методе или уграђене методе већ постоје као део програмског језика Јава. Пример уграђене методе може бити:
String text = "Hello World"; text.toLowerCase();
Овде је тоЛоверЦасе уграђени Јава метод који се може позвати са било ког места у вашем коду.
Структура метода у Јави
Хајде да погледамо идеалну структуру метода у Јави:
[access_modifier] [return_type] method_name(...parameters) { // method body }
Ове компоненте методе морају бити специфициране по редоследу. На пример, метода се не може дефинисати пре повратног типа и слично. Хајде да упознамо функције сваке од ових компоненти које чине метод и како оне раде заједно.
#1. Модификатор приступа
У Јави, модификатори приступа су кључне речи које дефинишу видљивост методе, класе, интерфејса, променљиве итд. Технички, у Јави постоји пет модификатора приступа:
- јавно: доступно свим класама
- приватно: доступно само класи којој припада
- подразумевано: подразумевани модификатор приступа је сличан заштићеном модификатору у коме је метод доступан само унутар истог пакета
- заштићено: доступно унутар подкласа или одређеног пакета
public int sum(a int, b int) { return a + b; }
Овде метода цалц има модификатор приступа као јаван и стога ће бити доступна са свих страна.
#2. Ретурн Типе
Тип повратка функције дефинише тип података података које ће функција вратити. Ако не желите да вратите ништа из функције, наведите тип враћања воид у том случају. Кључна реч ретурн се не може користити када је наведен тип воид. Навођење типа повратка је неопходно да би се дефинисала функција.
public void log(String text) { System.out.println(text); }
Горњи метод не враћа ништа; то је само штампање текста на конзоли. И тако, воид тип враћања.
#3. Назив методе
Он идентификује метод у класи и користи се за позивање методе из објекта.
class Print { void log(String text) { System.out.println(text); } } Print p = new Print(); p.log("hello world"); // outputs "hello world"
#4. Параметерс
Можете проследити аргументе методама према параметрима дефинисаним у њему. На пример, ако постоје два параметра дефинисана за метод, онда можете проследити само два аргумента са одговарајућим типовима података. И морате проследити аргументе редоследом којим су дефинисани.
class Calc { int sum(a int, b int) { return a + b; } } Calc cal = new Calc(); cal.sum(3, 7); // will return 10
#5. Тело
Тело методе укључује програмску логику која се користи за враћање одређеног резултата. Обавља функцију коју би метода требало да обавља. Затворен је у витичасте заграде и често се назива блок кода.
class Calc { int sum(a int, b int) { return a + b; } }
Овде је израз ретурн унутар витичастих заграда тело суме метода.
Методе позивања у Јави
Позивање метода у Јави је прилично једноставно. Методу можете позвати њеним именом из инстанце класе у којој живи.
Статичке методе се могу позвати без инстанце објекта класе у којој је присутна. Нестатичке методе морају бити строго позване из инстанце класе, другим речима, из објекта.
За статичке методе, позивање изгледа овако:
class Math { public static int sum(int a, int b) { return a + b; } } public class Main { public static void main(String[] args) { int add = Math.sum(5, 2); System.out.println(add); } }
У горњем коду, метод сум унутар класе Матх је статичан метод. И то је разлог зашто не морате да креирате објекат (инстанцу) класе Матх, потребно је само да позовете метод из саме класе.
Са друге стране, за нестатичке методе, позивање изгледа овако:
class Math { public int sum(int a, int b) { return a + b; } } public class Main { public static void main(String[] args) { int add = new Math().sum(5, 2); System.out.println(add); } }
Овде креирате нови објекат из класе Матх и затим позивате метод сум. Разлог за ово је што се нестатичке методе не инстанцирају док се класа не инстанцира.
Тако можете позвати метод у Јави.
Завршне речи
Не само у Јави већ и у било ком програмском језику, методе су одличан начин да организујете свој код и поново их користите на више места. Методе су градивни блокови модуларне архитектуре и архитектуре засноване на компонентама.
Ако се бавите Јавом, сазнајте више о руковању изузецима у Јави.