Mungkin pada pelajaran matematika, kalian pernah belajar tentang fungsi. Apabila kita memiliki fungsi f(x) = 2x+5, maka f(2) akan bernilai 9. Nah, konsep fungsi pada matematika ini mirip dengan method yang ada pada Java. Pada umumnya, struktur sebuah method adalah seperti berikut.
public void namaMethod(){}
“public” merupakan kata kunci visibilitasnya dan “void” merupakan nilai baliknya. Saya dulu bingung dengan apa maksud nilai balik ini karena tidak mendapatkan penjelasan rinci tentang apa fungsi dari nilai balik ini. Balik lagi ke matematika, apabila saya meminta f(2) dari fungsi f(x) = 2x+5 maka saya akan mendapatkan 9 dan apa yang saya dapatkan dari fungsi ini akan selalu merupakan angka. Bisakah saya meminta nilai dari f(mobil) ? Jawabannya pasti tidak dalam matematika (kalau memang benar bisa saya memohon maaf atas pernyataan saya ini). Akan tetapi, dalam Java kita tidak hanya bisa mempunyai tipe data angka, melainkan huruf (String), boolean, dan sebagainya (penjelasan lebih lanjut akan dibahas pada pembahasan “Tipe data dalam Java”). Oleh karena itu, kita perlu mendefinisikan atau menyatakan tipe data apakah yang akan dikembalikan dari sebuah method.
Tanda kurung setelah nama method merupakan tanda bahwa itu adalah sebuah method. Di dalam kurung tersebut, bisa dimasukkan nilai atau biasa disebut argumen untuk diolah di dalam method sehingga menghasilkan nilai yang diinginkan. Sama seperti pada matematika, pada fungsi f(x) = 2x+5 kita bisa meminta nilai dari f(2) dan sebagainya. Dalam hal ini, x kita sebut sebagai parameter dan 2 merupakan argumen dari fungsi tersebut. Lalu, kalian juga mungkin pernah melihat fungsi f(x, y) = 2x + 5y atau f(x, y, z) = 3x +2y +6z. Nah, di dalam Java, kita juga bisa membuat method mempunyai banyak parameter seperti fungsi tersebut. Bahkan, kita juga bisa mendefinisikan method tanpa parameter, seperti f(). Karena tipe data dalam parameter tersebut bisa berupa angka atau huruf, maka kita juga perlu mendefinisikan tipe data dari parameter tersebut, sehingga mencegah tipe data lain untuk dimasukkan. Berikut struktur method dengan parameter dan tanpa parameter.
Tanpa parameter :
visibilitas tipe_nilai_balik namaMethod (){…}
Dengan parameter :
visibilitas tipe_nilai_balik namaMethod(tipe_data_p1 parameter1, tipe_data_p2 parameter2, …){…}
Contoh method tanpa parameter :
public void methodTanpaParameter(){}
Contoh method dengan parameter :
public void methodDenganParameter(int parameter1, String parameter2){}
Method yang kita bahas sebelumnya adalah method dengan nilai balik ‘void’ atau dengan kata lain tidak mempunyai nilai balik. Apabila kita ingin method kita mempunyai nilai balik, maka kita wajib menyatakan nilai balik di dalam methodnya dengan kata kunci return kemudian diikuti dengan nilai baliknya.
Contoh method tanpa parameter dan mempunyai nilai balik int :
public int methodReturnInt() {return 10;}
Pada contoh yang kita lihat di atas, method tersebut akan mengembalikan nilai ‘10’ apabila dipanggil. Mungkin Anda bingung bagaimana kita bisa mendapatkan nilai balik tersebut. Oke, mari kita lihat contoh berikut ini.
public int angka = methodReturnInt();
Pada contoh di atas, kita memanggil method tersebut kemudian method tersebut akan mengembalikan nilai balik bertipe ‘int’. Nah, kita bisa menangkap nilai baliknya dengan cara menyimpannya ke dalam sebuah variabel. Anda juga bisa langsung menampilkannya kepada user dengan menggunakan perintah seperti ini.
System.out.println(methodReturnInt());
Selain itu, Anda juga bisa langsung memasukannya dalam perhitungan seperti contoh berikut pada sebuah variabel.
public int jumlah = 10 + methodReturnInt();
Lalu tentang method khusus pada Java, yaitu public static void main(String[] args). Argumen dari method tersebut adalah array bertipe String. Lalu pertanyaannya, kenapa argumennya array ? Karena argumen yang dimasukkan bisa berkali-kali dan setiap argumen yang dimasukkan disusun dan dinomori di dalam array tersebut. Kenapa String ? Karena String bisa memuat baik angka maupun huruf. Bila tipe datanya int atau double, maka bila kita memasukkan karakter di dalamnya akan muncul error. Hal tersebut sudah menjadi standar dalam Java, Anda tidak perlu bingung dengan hal tersebut. Method ini menjadi tonggak atau method yang akan pertama kali dipanggil saat program berjalan. Oleh karena itu, kita terkadang menambahkan kode seperti new Class1(); atau Class1 c1 = new Class1(); yang artinya, method tersebut akan memanggil kelas baik itu kelas dimana method tersebut ada atau dari kelas lain untuk dijalankan.
Sekian pembahasan tentang method pada Java, pada tutorial selanjutnya kita akan mengenal operator pada Java dan cara penggunaannya.