1. Fungsi/metode dalam Java

Anda telah mempelajari banyak perintah Java, yang berarti Anda dapat menulis beberapa program yang cukup rumit. 10, 20, 30 baris kode dalam sebuah program bukanlah program yang sangat besar, bukan?

Tapi program 100+, sekarang sudah besar, dan agak sulit untuk memahami kodenya. Adakah yang dapat Anda lakukan untuk menyederhanakan penulisan dan membaca program yang memiliki banyak kode?

Ya, dan metode (atau fungsi) akan membantu kita dalam hal ini.

Apa itu metode? Sederhananya, metode adalah sekelompok perintah yang memiliki nama unik . Dengan kata lain, kami hanya memasukkan beberapa perintah ke dalam satu grup dan memberinya nama yang unik. Dan itu saja — metodenya sudah siap.

Contoh:

Tanpa metode Dengan metode
class Solution
{
   public static void main(String[] args)
   {
     System.out.print("Wi-");
     System.out.println("Fi");
     System.out.print("Wi-");
     System.out.println("Fi");

     System.out.print("Wi-");
     System.out.println("Fi");
   }
}
class Solution
{
   public static void main(String[] args)
   {
     printWiFi();
     printWiFi();
     printWiFi();
   }
   public static void printWiFi()
   {
     System.out.print("Wi-");
     System.out.println("Fi");
   }
}

Dalam program di kolom kiri, kami mengulangi kode yang sama tiga kali — kami melakukan ini dengan sengaja untuk mengilustrasikan suatu poin. Namun dalam program di sebelah kanan, kami memindahkan kode berulang ke metode terpisah dan memberinya nama yang unik — printWiFi.

Dan alih-alih kode yang dipindahkan, kami memanggil printWiFi()metode tersebut 3 kali.

Saat program di kolom sebelah kanan dijalankan, setiap kali metode printWiFi()dijalankan, semua perintah di dalam printWiFi()metode dijalankan. Kami baru saja membuat perintah (metode) baru, menggabungkan beberapa perintah menjadi satu grup.

Kode apa pun dapat dipecah menjadi metode terpisah. Ini dilakukan untuk menyederhanakan hal-hal: idenya adalah lebih baik memiliki banyak metode kecil daripada satu metode besar. Anda akan segera terkejut bahwa pernah ada waktu ketika Anda menulis program Anda sendiri tanpa menulis metode Anda sendiri.


2. Mendeklarasikan sebuah metode di Java

Jadi bagaimana Anda menulis metode Anda dengan benar?

public static void name()
{
  method body
}

Ada banyak nuansa untuk dipertimbangkan saat mendeklarasikan (membuat) sebuah metode, tetapi kita akan mulai dengan dasar-dasarnya. Bagaimana kita bisa mendeklarasikan metode paling sederhana? Deklarasi metode sederhana terlihat seperti ini:

Di mana name nama unik dari metode tersebut dan method bodymewakili perintah yang membentuk metode tersebut. Arti kata public, static, dan voidakan dibahas nanti.

Setelah kami membuat metode, kami dapat memanggilnya di metode kami yang lain. Pemanggilan metode terlihat seperti ini:

name();

Di mana namenama unik dari metode yang ingin kita panggil, yaitu metode yang perintahnya ingin kita jalankan ketika kita tiba di pemanggilan metode.

Saat program mencapai pemanggilan metode, program hanya akan masuk ke metode, menjalankan semua perintahnya, kembali ke metode awal, dan melanjutkan eksekusi.

Seperti yang mungkin sudah Anda duga sekarang, sebagian besar perintah yang telah kita pelajari sejauh ini hanyalah metode yang ditulis oleh pemrogram lain untuk membuat hidup kita lebih mudah: , , dll.System.out.println()Thread.sleep()

Suatu metode dapat berisi panggilan ke metode lain:

Kode Catatan
class Solution
{
   public static void main(String[] args)
   {
     printWiFi10Times();
   }

   public static void printWiFi10Times()
   {
     for (int i = 0; i < 10; i++)
       printWiFi();
   }

   public static void printWiFi()
   {
     System.out.print("Wi-");
     System.out.println("Fi");
   }
}




Panggil printWiFi10Times()metode


Deklarasikan printWiFi10Timesmetode


Panggil printWiFi() metode 10 kali dalam satu lingkaran


Deklarasikan printWiFimetode

Tampilkan teks di layar:
Wi-Fi

3. Fakta tentang metode

Berikut adalah beberapa fakta tentang metode:

Fakta 1. Metode selalu menjadi bagian dari kelas.

Metode hanya dapat dideklarasikan di dalam kelas. Sebuah metode tidak dapat dideklarasikan di dalam metode lain. Metode tidak dapat dideklarasikan di luar kelas.

Fakta 2. Nama metode tidak memiliki makna sakral.

Tidak masalah metode apa yang dipanggil — itu tidak memengaruhi apa pun. Metode utama adalah metode yang sama seperti yang lainnya. Hanya saja nama ini dipilih untuk metode yang akan digunakan mesin Java untuk memulai eksekusi program. Tidak ada yang ajaib tentang itu.

Fakta 3 Urutan metode dalam kelas tidak masalah.

Anda dapat menulis metode Anda di kelas dalam urutan apa pun — ini tidak akan memengaruhi eksekusi program dengan cara apa pun. Contoh:

Kode
class Solution
{
   public static void printWiFi10Times()
   {
     for (int i = 0; i < 10; i++)
       printWiFi();
   }
   
   public static void main(String[] args)
   {
     printWiFi10Times();
   }

   public static void printWiFi()
   {
     System.out.print("Wi-");
     System.out.println("Fi");
   }
}
class Solution
{
   public static void printWiFi()
   {
     System.out.print("Wi-");
     System.out.println("Fi");
   }

   public static void printWiFi10Times()
   {
     for (int i = 0; i < 10; i++)
       printWiFi();
   }
   public static void main(String[] args)
   {
     printWiFi10Times();
   }
}

Fakta 4. Variabel di dalam satu metode sama sekali tidak terkait dengan variabel metode lain.

Apa yang terjadi di Vegas, tetap di Vegas. Dan variabel yang dideklarasikan di dalam metode tetap berada di dalam metode.

Variabel dengan nama yang sama dapat dideklarasikan dalam dua metode yang berdekatan, dan variabel ini tidak berhubungan satu sama lain dengan cara apa pun.


4. Nama metode

Sudah lama diketahui bahwa dua masalah tersulit dalam pemrograman adalah memilih nama yang tepat untuk metode dan memilih nama yang tepat untuk variabel.

Nyatanya, hampir seluruh ilmu telah muncul tentang bagaimana cara menyebutkan metode dengan benar. Dan setiap bahasa pemrograman memiliki standar tersendiri. Di Jawa, biasanya mengikuti prinsip-prinsip ini:

Prinsip 1. Nama metode harus menjelaskan secara singkat apa yang dilakukan metode tersebut.

Kemudian pemrogram lain yang membaca kode Anda dapat mengandalkan nama metode untuk menebak apa yang dilakukan kode tersebut. Dia tidak perlu melihat kode metode yang dipanggil setiap saat. Dan tujuan metode lebih mudah diingat.

Ingat yang digunakan untuk 'menidurkan program' dan digunakan untuk 'membaca bilangan bulat berikutnya'. Nyaman, bukan?Thread.sleep()Scanner.nextInt()

Prinsip 2. Nama metode bisa terdiri dari beberapa kata.

Namun, ada beberapa batasan saat melakukan ini:

  • Anda tidak boleh memiliki spasi dalam nama metode: semua kata ditulis bersamaan.
  • Setiap kata menggunakan huruf kapital, kecuali yang pertama.
  • Nama metode selalu dimulai dengan huruf kecil

Ingat printWiFi10Timesmetodenya. Apa arti nama itu? "Tampilkan kata 'WiFi' 10 kali". Anda tidak boleh memasukkan banyak kata dalam nama metode: nama harus mencerminkan esensinya.

Standar untuk metode penamaan ini disebut CamelCase (Huruf besar seperti punuk unta).

Prinsip 3. Nama metode dimulai dengan kata kerja.

Metode selalu melakukan sesuatu, jadi kata pertama dalam nama metode selalu merupakan tindakan.

Berikut adalah beberapa nama buruk untuk metode: home, cat, car, train, ...;

Beberapa nama baik adalah: run, execute, print, read, write, ...

Prinsip 4. Gunakan hanya huruf dan angka Latin.

Java memiliki dukungan luar biasa untuk berbagai bahasa. Anda dapat menulis nama variabel, metode, dan kelas dalam bahasa Rusia dan Cina — semuanya akan berfungsi!

Tetapi! Berapa lama Anda harus belajar Java, jika metodenya System.out.println()ditulis dalam bahasa Cina? Jauh lebih lama dari sekarang, bukan? Itu poin pertama.

Kedua, banyak tim pengembangan perangkat lunak bersifat internasional. Sejumlah besar perpustakaan Java digunakan oleh programmer dari seluruh dunia.

Oleh karena itu, disarankan untuk hanya menggunakan huruf dan angka Latin dalam nama metode.

Penting:
Nama metode harus dimulai dengan huruf (tidak boleh dimulai dengan angka).