Генерално, а методом је начин да се изврши неки задатак. Слично томе, тхе метод у Јави је збирка упутстава која обавља одређени задатак. Омогућава поновну употребу кода. Такође можемо лако модификовати код користећи методе . У овом одељку ћемо научити шта је метода у Јави, врсте метода, декларација метода, и како позвати метод у Јави .
Шта је метода у Јави?
А методом је блок кода или колекција исказа или скуп кодова груписаних заједно за обављање одређеног задатка или операције. Користи се за постизање могућност поновне употребе кода. Методу пишемо једном и користимо је много пута. Не захтевамо да пишемо код изнова и изнова. Такође обезбеђује лака модификација и читљивост кода, само додавањем или уклањањем комада кода. Метод се извршава само када га позовемо или позовемо.
Најважнији метод у Јави је главни() методом. Ако желите да прочитате више о методи маин(), прођите кроз везу хттпс://ввв.јаватпоинт.цом/јава-маин-метход .
Декларација о методи
Декларација методе пружа информације о атрибутима методе, као што су видљивост, тип повратка, име и аргументи. Има шест компоненти које су познате као заглавље метода , као што смо показали на следећој слици.
Потпис методе: Сваки метод има потпис методе. То је део декларације методе. То укључује назив методе и листа параметара .
Спецификатор приступа: Спецификатор или модификатор приступа је тип приступа методе. Одређује видљивост методе. Јава пружа четири типови спецификација приступа:
Тип повратка: Тип повратка је тип података који метод враћа. Може имати примитивни тип података, објекат, колекцију, воид, итд. Ако метода не врати ништа, користимо кључну реч воид.
конвенција имена јава
Назив методе: То је јединствено име које се користи за дефинисање назива методе. Мора да одговара функционалности методе. Претпоставимо, ако креирамо методу за одузимање два броја, име методе мора бити одузимање(). Метода се позива својим именом.
Листа параметара: То је листа параметара одвојених зарезом и затворених у пар заграда. Садржи тип података и име променљиве. Ако метода нема параметар, оставите заграде празне.
Тело методе: То је део декларације методе. Садржи све радње које треба извршити. Затворен је у пар витичастих заграда.
Именовање метода
Док дефинишете метод, запамтите да име методе мора бити а глагол и почните са а мала слова писмо. Ако назив методе има више од две речи, прво име мора бити глагол иза којег следи придев или именица. У називу методе са више речи, прво слово сваке речи мора бити у велика слова осим прве речи. На пример:
Назив методе од једне речи: сума(), област()
Назив методе са више речи: ареаОфЦирцле(), стрингЦомпарисион()
Такође је могуће да метода има исто име као друго име методе у истој класи, познато је као преоптерећење метода .
Врсте метода
Постоје две врсте метода у Јави:
- Предефинисани метод
- Кориснички дефинисани метод
Предефинисани метод
У Јави, унапред дефинисане методе су метод који је већ дефинисан у Јава библиотекама класа познат као унапред дефинисане методе. Такође је познат као метод стандардне библиотеке или уграђени метод . Ове методе можемо директно користити само тако што ћемо их у било ком тренутку позвати у програму. Неке унапред дефинисане методе су дужина(), једнако(), упореди са(), скрт(), итд. Када позовемо било коју од унапред дефинисаних метода у нашем програму, серија кодова везаних за одговарајући метод се покреће у позадини која је већ ускладиштена у библиотеци.
Свака унапред дефинисана метода је дефинисана унутар класе. Као такав принт() метода је дефинисана у јава.ио.ПринтСтреам класа. Штампа изјаву коју пишемо унутар методе. На пример, принт('Јава') , штампа Јава на конзоли.
Погледајмо пример унапред дефинисане методе.
Демо.јава
public class Demo { public static void main(String[] args) { // using the max() method of Math class System.out.print('The maximum number is: ' + Math.max(9,7)); } }
Излаз:
The maximum number is: 9
У горњем примеру користили смо три унапред дефинисана метода маин(), принт(), и мак() . Користили смо ове методе директно без декларације јер су унапред дефинисане. Метод принт() је метод за ПринтСтреам класа која штампа резултат на конзоли. Метода мак() је метода Матх класа која враћа већи од два броја.
Такође можемо видети потпис методе било које унапред дефинисане методе користећи везу хттпс://доцс.орацле.цом/ . Када прођемо кроз везу и видимо потпис методе мак(), налазимо следеће:
У горњем потпису методе видимо да потпис методе има спецификацију приступа јавности , модификатор без приступа статична , тип повратка инт , назив методе мак(), листа параметара (инт а, инт б). У горњем примеру, уместо да дефинишемо метод, управо смо га позвали. Ово је предност унапред дефинисаног метода. То чини програмирање мање компликованим.
Слично томе, такође можемо видети потпис методе принт() методе.
Кориснички дефинисани метод
Метода коју је написао корисник или програмер је позната као кориснички дефинисано методом. Ове методе су модификоване у складу са захтевима.
Како креирати кориснички дефинисани метод
Хајде да направимо кориснички дефинисан метод који проверава да ли је број паран или непаран. Прво ћемо дефинисати метод.
//user defined method public static void findEvenOdd(int num) { //method body if(num%2==0) System.out.println(num+' is even'); else System.out.println(num+' is odd'); }
Дефинисали смо горњи метод под називом финдевенодд(). Има параметар на једном типа инт. Метода не враћа никакву вредност због чега смо користили воид. Тело методе садржи кораке за проверу да ли је број паран или непаран. Ако је број паран, штампа се број је чак , иначе штампа број је чудно .
Како позвати или позвати кориснички дефинисани метод
Када дефинишемо метод, треба га позвати. Позивање методе у програму је једноставно. Када позовемо или позовемо кориснички дефинисани метод, контрола програма се преноси на позвани метод.
мискл није једнак
import java.util.Scanner; public class EvenOdd { public static void main (String args[]) { //creating Scanner class object Scanner scan=new Scanner(System.in); System.out.print('Enter the number: '); //reading value from the user int num=scan.nextInt(); //method calling findEvenOdd(num); }
У горњем исечку кода, чим компајлер стигне до линије финдЕвенОдд(нум), контрола преноси на методу и даје излаз у складу са тим.
Хајде да комбинујемо оба исечка кода у један програм и извршимо га.
ЕвенОдд.јава
import java.util.Scanner; public class EvenOdd { public static void main (String args[]) { //creating Scanner class object Scanner scan=new Scanner(System.in); System.out.print('Enter the number: '); //reading value from user int num=scan.nextInt(); //method calling findEvenOdd(num); } //user defined method public static void findEvenOdd(int num) { //method body if(num%2==0) System.out.println(num+' is even'); else System.out.println(num+' is odd'); } }
Излаз 1:
Enter the number: 12 12 is even
Излаз 2:
Enter the number: 99 99 is odd
Хајде да видимо још један програм који враћа вредност методу за позивање.
У следећем програму дефинисали смо метод под називом додати() који збрајају два броја. Има два параметра н1 и н2 целобројног типа. Вредности н1 и н2 одговарају вредности а и б, респективно. Стога, метода додаје вредност а и б и чува је у променљивој с и враћа збир.
Аддитион.јава
public class Addition { public static void main(String[] args) { int a = 19; int b = 5; //method calling int c = add(a, b); //a and b are actual parameters System.out.println('The sum of a and b is= ' + c); } //user defined method public static int add(int n1, int n2) //n1 and n2 are formal parameters { int s; s=n1+n2; return s; //returning the sum } }
Излаз:
The sum of a and b is= 24
Статичка метода
Метода која има кључну реч статиц је позната као статички метод. Другим речима, метода која припада класи, а не инстанци класе, позната је као статичка метода. Такође можемо да креирамо статичку методу користећи кључну реч статична пре назива методе.
Главна предност статичке методе је у томе што је можемо позвати без креирања објекта. Може приступити статичким члановима података и такође променити њихову вредност. Користи се за креирање методе инстанце. Позива се коришћењем имена класе. Најбољи пример статичке методе је главни() методом.
Пример статичке методе
Дисплаи.јава
public class Display { public static void main(String[] args) { show(); } static void show() { System.out.println('It is an example of static method.'); } }
Излаз:
детерминистички коначни аутомати
It is an example of a static method.
Метод инстанце
Метод класе је познат као ан метод инстанце . То је нестатична метод дефинисан у класи. Пре позивања или позивања методе инстанце, потребно је креирати објекат његове класе. Погледајмо пример методе инстанце.
ИнстанцеМетходЕкампле.јава
public class InstanceMethodExample { public static void main(String [] args) { //Creating an object of the class InstanceMethodExample obj = new InstanceMethodExample(); //invoking instance method System.out.println('The sum is: '+obj.add(12, 13)); } int s; //user-defined method because we have not used static keyword public int add(int a, int b) { s = a+b; //returning the sum return s; } }
Излаз:
The sum is: 25
Постоје две врсте метода инстанце:
Метод приступа: Метод(е) који чита(ју) променљиве(е) инстанце познати су као метода приступа. Лако га можемо идентификовати јер је метод префиксиран речју добити . Такође је познато као геттерс . Враћа вредност приватног поља. Користи се за добијање вредности приватног поља.
Пример
public int getId() { return Id; }
Метод мутатора: Метод(е) чита(ју) променљиву(е) инстанце и такође мењају вредности. Лако га можемо идентификовати јер је метод префиксиран речју комплет . Такође је познато као постављачи или модификатори . Не враћа ништа. Прихвата параметар истог типа података који зависи од поља. Користи се за подешавање вредности приватног поља.
Пример
public void setRoll(int roll) { this.roll = roll; }
Пример методе приступа и мутатора
Студент.јава
public class Student { private int roll; private String name; public int getRoll() //accessor method { return roll; } public void setRoll(int roll) //mutator method { this.roll = roll; } public String getName() { return name; } public void setName(String name) { this.name = name; } public void display() { System.out.println('Roll no.: '+roll); System.out.println('Student name: '+name); } }
Абстрацт Метход
Метода која нема тело методе позната је као апстрактна метода. Другим речима, без имплементације је познат као апстрактни метод. Увек се изјављује у апстрактна класа . То значи да сама класа мора бити апстрактна ако има апстрактни метод. Да бисмо направили апстрактни метод, користимо кључну реч апстрактан .
Синтакса
abstract void method_name();
Пример апстрактне методе
Демо.јава
abstract class Demo //abstract class { //abstract method declaration abstract void display(); } public class MyClass extends Demo { //method impelmentation void display() { System.out.println('Abstract method?'); } public static void main(String args[]) { //creating object of abstract class Demo obj = new MyClass(); //invoking abstract method obj.display(); } }
Излаз:
Abstract method...
Фабрички метод
То је метода која враћа објекат у класу којој припада. Све статичке методе су фабричке методе. На пример, НумберФормат обј = НумберФормат.гетНумберИнстанце();