Subrutin ialah bahagian berasingan program yang mempunyai nama dan menyelesaikan tugasnya yang berasingan. Subrutin terletak pada permulaan program utama dan boleh dilancarkan (dipanggil) dari program utama dengan menyatakan nama
Penggunaan subrutin membolehkan anda mengelakkan pertindihan kod, sekiranya anda perlu menulis kod yang sama di tempat yang berbeza dalam atur cara.
Perpustakaan yang diimport ke dalam program (contohnya, perpustakaan matematik Matematik) terdiri daripada subrutin yang telah disusun oleh seseorang. Pengaturcara tidak perlu memikirkan algoritma apa yang mereka laksanakan, tetapi cukup gunakannya, hanya memikirkan apa sebenarnya yang mereka lakukan. Ini adalah penjimat masa yang besar. Tidak perlu menulis algoritma yang telah ditulis oleh orang lain.
Setiap rutin
hanya perlu melakukan satu tugas, sama ada hanya mengira sesuatu, atau mengeluarkan beberapa data, atau melakukan sesuatu yang lain.
Terdapat dua jenis subrutin -
prosedurdan
fungsi
Sub-prosedur melakukan beberapa tindakan, contohnya, memaparkan hasil pada skrin dalam bentuk tertentu (contoh mudah, operator
println()
ialah sub-prosedur standard yang mencetak maklumat kepada skrin)
Subrutin fungsi
mengembalikan hasil (nombor, rentetan aksara, dll.) yang boleh kita gunakan dalam program utama.
Mari cuba tulis prosedur mudah:
Katakan kita perlu memaparkan rentetan "Ralat" pada skrin setiap kali ralat boleh berlaku dalam kod disebabkan oleh kesalahan pengguna (contohnya, apabila dia memasukkan data yang salah)
Ini boleh dilakukan dengan menulis pernyataan
System.out.println("Ralat");
Dan sekarang bayangkan bahawa baris sedemikian perlu dimasukkan di banyak tempat dalam program. Sudah tentu, anda boleh menulisnya di mana-mana sahaja. Tetapi penyelesaian ini mempunyai dua kelemahan.
1) rentetan ini akan disimpan dalam ingatan berkali-kali
2) jika kita ingin menukar output pada ralat, kita perlu menukar baris ini sepanjang program, yang agak menyusahkan
Untuk kes sedemikian, prosedur diperlukan.
Program dengan prosedur mungkin kelihatan seperti ini:
...
static void printError() // penerangan prosedur
{
System.out.println("Ralat"); // badan prosedur - arahan bahawa prosedur akan dilaksanakan
}
utama kekosongan statik awam (String[] args)
{
...
printError() // mulakan prosedur untuk pelaksanaan. Kami hanya menentukan nama prosedur yang ingin kami laksanakan.
...
printError()
...
}
Prosedur bermula dengan perkataan void
. Terdapat kurungan kosong selepas nama prosedur.
Semua pernyataan yang dilaksanakan dalam prosedur diinden.
Prosedur ditulis sebelum fungsi utama main()
Untuk melaksanakan prosedur, dalam program utama anda perlu memanggilnya dengan nama dan ingat untuk menulis kurungan!
Anda boleh memanggil prosedur dalam program beberapa kali.