Java-дағы әдістер  



Java

Әдіс дегеніміз не?  

Java немесе функциядағы әдістер - бұл орындалу операторлары мен операцияларды қамтитын кодтар блогы. Ол негізінен сіздің кодыңыздың не істей алатындығын сипаттайды. Бұл санның квадрат түбірін табатын sqrt (квадрат түбір) сияқты математикалық функцияға ұқсас. Java-да бізде де белгілі бір кодтық әрекетті сипаттайтын функциялар немесе әдістер болуы мүмкін. Біз әрқашан әдістерді тек сынып ішінде жазуымыз керек.

Java-да әдістердің артықшылығы  

  • Қайта пайдалану мүмкіндігі: Әдістер белгілі бір функцияны шақыру арқылы кодты қайта пайдалануға мүмкіндік береді. Бұл бізге артық код жазуға жол бермейді және қайта қолдануға мүмкіндік береді.
  • Оқуға қабілеттілік: Бұл кодты оқылымды және түсінікті етеді, өйткені біз осыған байланысты әрекеттерді әдіске біріктіреміз.
  • Қол жетімділік: Әдістер бізге кодты оңай ұстауға көмектеседі және өзгерту қажет болған кезде оны оңай өңдеуге мүмкіндік береді.

Java-дағы әдістердің түрлері  

Java екі түрлі класс әдістерін қолдайды:

Java әдістері

Кітапхананың стандартты әдістері

Бұл Java кітапханасында бар алдын-ала анықталған әдістер. Біз бұл әдістерді еш өзгеріссіз қолдана аламыз. Мысалы, бізде басу() әдісі жүйе бізге мәлімдеме басып шығаруға мүмкіндік беретін класс. Төмендегі мысалда көріп отырғанымыздай, біз бұл әдісті өтінішті басып шығару үшін тікелей қолдана аламыз.

public class StandardMethod {

  public static void main(String[] args) {
    System.out.println("This is a standard library method");

  }

}
This is a standard library method

Пайдаланушының анықтаған әдістері

Өз функциясын немесе әдісін жасаған кезде оны қолданушы анықтаған әдіс деп атаймыз. Ұқсас әрекеттерді функцияға біріктіруге болады. Мысалға, қосу () сандарды қосатын әдіс болып табылады. Осыдан міндеттер немесе функционалдылықты анықтау үшін әдістер қолданылады.

Сондай-ақ, қараңыз
Java Concurrency утилиталары

Бұдан әрі Java-да қолданушы анықтайтын әдістерді қалай құруға және шақыруға болатынын қарастырайық.

Әдіс жасаңыз  

Біз әрдайым сынып ішінде әдіс жасауымыз керек. Әдісте әдіс бар ат ілесуші жақша().

Төменде әдісті құру үшін синтаксис берілген.

access_type return_type method_name(arguments) {
//method body
}

рұқсат_түрі: ол анықтайды кіру модификаторы мемлекеттік, жеке, қорғалатын сияқты.

return_type: Әдістің кез келген мәнді қайтаратынын анықтайды. Ол жарамсыз болуы мүмкін (қайтару түрі жоқ) немесе String немесе int тәрізді түрді көрсетуі мүмкін

әдіс_аты: Әдіс әрекетіне сәйкес келетін кез-келген жарамды атау

аргументтер: Егер әдіс операцияны орындау үшін қандай да бір параметрлерді немесе аргументтерді қажет етсе. Бұл міндетті емес.

әдіс денесі: Әдістің функционалдығы

Төменде пайдаланушы анықтаған әдісті құрудың мысалы келтірілген. Мұнда біз әдіс жасадық қосу бар жарамсыз қайтару түрі және қоғамдық кіру түрі. Әдістің негізгі бөлігінде бізде баспа мәлімдемесі бар.

public class MethodExample {
  
  public void add() {
    System.out.println("Addition method");
  }

}

Әдістің конвенциясын атау  

  • Әдістің атауы әрқашан кіші әріптен басталады
  • Ол әрқашан етістік болуы керек. Мысалы: қосу ()
  • Егер атау екі сөзден көп болса, оны етістіктен кейін сын есім немесе зат есімнен бастау керек. Мысалы: getName ()
  • Егер әдіс атауы үшін бірнеше сөздер болса, бірінші сөзден басқа сөздердің бірінші әрпі бас әріптен басталуы керек. Мысалы: getAddressDetails ()

Java әдісін қолданыңыз  

Әдіс қоңырауды шақырған кезде ғана қолданылады. Жақша ішінде қандай-да бір аргумент болатын әдіс атауын қолданып әдісті шақыра аламыз.

method_name(arguments);

Төменде әдісті шақырудың қарапайым мысалы келтірілген. Әдістер сынып ішінде анықталғандықтан, әдісті тек класс данасын қолдану арқылы қолдана аламыз. Бұл мысалда, қосу әдісі және m сынып объектісі болып табылады.

public class MethodExample {
  
  public void add() {
    System.out.println("Addition method");
  }
  
  public static void main(String[] args) {
    MethodExample m = new MethodExample();
    m.add();
  }

}
Addition method

Параметрі жоқ және қайтару түрі жоқ әдіс  

Төменде ешқандай аргументтері немесе қайтару түрлері жоқ java әдісінің мысалы келтірілген. Әдіс ешқандай мәнді қайтармаған кезде біз жарамсыз қайтару түрі ретінде кілт сөз. Әдісте аргументтер болмаған кезде біз оны бос жақша арқылы еске аламыз.

Сондай-ақ, қараңыз
Java-дағы семафор

Біз бүтін айнымалыларды инициализациялаймыз x, y конструкторды қолданып, осы мәнді тікелей ішінде қолданыңыз қосу әдіс. Бұл әдісте ешқандай параметрлер жоқ және қайтару түрі жоқ.

public class Addition {

  int x,y;
  Addition(int x, int y) {
    this.x = x;
    this.y = y;
  }
  
  public void add() {
    int sum = x + y;
    System.out.println("Sum is: " + sum);
  }
  public static void main(String[] args) {
    Addition a = new Addition(5,8);
    a.add();
  }

}
Sum is: 13

Параметрлері бар әдіс, бірақ қайтару түрі жоқ  

Төмендегі мысалда параметрлері бар әдіс көрсетілген, бірақ ешқандай мән бермейді. Әдіс айырма бүтін типтің екі параметрін қабылдайды. Сондықтан әдісті шақырған кезде мәндерді әдіс ішіндегі параметр айнымалыларына тағайындайтын әдіске жіберу керек. Мұнда x және y параметрлері сәйкесінше 4 және 5 мәндерін қабылдайды.

public class Subtraction {
  
  public void difference(int x, int y) {
    int diff = x - y;
    System.out.println("Difference is: " + diff);
  }

  public static void main(String[] args) {
    Subtraction s = new Subtraction();
    s.difference(10, 4);
  }

}
Difference is: 6

Класс айнымалыларының параметр айнымалыларынан басты айырмашылығы - сынып айнымалыларын бүкіл сыныпта қолдануға болады, мұнда параметр ретінде тек айнымалыларды тек әдіс ішінде қолдануға болады.

Қайтарылатын түрі бар, бірақ параметрлері жоқ әдіс  

Төмендегі мысалда әдіс өнім бүтін типтің мәнін қайтарады. Қайтаратын мәні бар кез келген әдіс келесіге ие болуы керек қайтару мәлімдемесі қайтарылуы керек құндылықпен. Бұл жағдайда айнымалы өнім қайтару мәні. Дәл сол сияқты, қайтару типі бар әдісті шақыру кезінде бізде функцияның нәтижесін алатын бірдей типтегі айнымалы болуы керек. Сондықтан біз қолданамыз int prod = m.multiply().

public class Multiplication {

  int product,x, y;
  
  Multiplication(int x, int y) {
    this.x = x;
    this.y = y;
  }
  
  public int multiply() {
    product = x * y;
    return product;
  }
  public static void main(String[] args) {
    Multiplication m = new Multiplication(4,8);
    int prod = m.multiply();
    System.out.println("Product is: " + prod);
  }

}
Product is: 32

Параметрі және қайтару түрі бар әдіс  

Бұл мысалда әдіс үлкенСан параметрлері де, қайтарылатын мәні де бар. Сондықтан әдісті шақырған кезде аргументтерді беру керек, сонымен қатар әдіс үшін қайтарылатын мәнді тағайындау үшін айнымалы болуы керек. Бұл жағдайда, x және y мәндері бар 47 және 29 сәйкесінше және айнымалыны қайтарыңыз макс әдістен. Әдісті шақыру кезінде бізде айнымалы болады құн осы әдіс нәтижесін алады.

public class Compare {

  int max;
  
  public int greaterNumber(int x, int y) {
    if(x > y)
      max = x;
    else
      max = y;
    
    return max;
  }
  public static void main(String[] args) {
    Compare c = new Compare();
    int value = c.greaterNumber(47, 29);
    System.out.println("Greater value is: " + value);
  }

}
Greater value is: 47

Статикалық Java әдісі  

Біз көргенбіз Java Static кілт сөзі қолдануға болатын оқулық static әдістер үшін кілт сөз. Бұл жағдайда бізге статикалық әдісті шақыру үшін ешқандай класс нысаны қажет емес және тікелей әдіс атауын пайдаланып қоңырау шала аламыз.

public class MethodExample {
  
  public static void add() {
    System.out.println("Addition method");
  }
  
  public static void main(String[] args) {
    add();
  }

}
Addition method

Instance әдістері  

Бұл әдістер non-static және классқа жататындар ан деп аталады instance әдіс. Бұл әдістер функцияны шақыру үшін объектіні немесе сынып данасын қажет етеді. Бұл ешқандай нысанды қажет етпейтін статикалық әдістерден айырмашылығы.

Сондай-ақ, қараңыз
Java-дағы ListIterator

Бұл мысалда біз даналық әдіс пен статикалық әдісті шақырудың айырмашылығын түсінеміз. қосу Бұл статикалық әдіс және шегеру болып табылады даналық әдіс.

public class MethodExample {
  
  //Static method
  public static void add() {
    System.out.println("Addition method");
  }
  
  //Instance method
  public void subtract() {
    System.out.println("Subtraction method");
  }
  public static void main(String[] args) {
    MethodExample m = new MethodExample();
    
    //Invoking a static method
    add();
    
    //Invoking an instance method
    m.subtract();
  }

}

Дана әдістерінің түрлері

  • Accessor әдісі: біз бұл әдісті дана айнымалыларын оқу үшін қолданамыз. Әдетте, бұл әдістердің префиксі бар алуға. Accessor әдістерін де деп атауға болады алушылар жеке айнымалылардың мәндерін оқу.
  • Мутатор әдісі: біз бұл әдісті дананың айнымалы мәнін өзгерту үшін қолданамыз. Олардың префиксі бар орнатыңыз. Бұлар сондай-ақ деп аталады орнатушылар және жеке айнымалылардың мәндерін орнату үшін қолданылады.

Бұл әдістер әртүрлі сыныптардың жеке айнымалыларын оқу және жаңарту үшін қолданылады.

Мысал:

public class InstanceMethodDemo {
  
  private String name;
  
  //Getter method
  public String getName() {
    return name;
  }
  
  //Setter method
  public void setName(String name) {
    this.name = name;
  }

  public static void main(String[] args) {
    

  }

}

Реферат әдісі  

Абстрактілі әдіс тек функционалды декларацияға ие және анықтамасы жоқ. Бұл дегеніміз, оның құрамында әдіс денесі жоқ. Біз абстракцияны жүзеге асыру үшін дерексіз әдістерді қолданамыз. Абстрактілі класс абстрактілі әдістерден тұрады. Абстрактілі сыныпты кеңейтетін класс абстрактілі әдістің функционалдығын жүзеге асырады.

abstract class class_name
{
  //abstract method
  abstract void method_name();
}

 

анықтамалық