Tutorial Belajar Java Part 38: Pengertian Function (Fungsi) Bahasa Java

Dalam merancang kode program, kadang kita sering membuat kode yang melakukan tugas sama secara berulang-ulang seperti membaca tabel dari database, menampilkan penjumlahan, dll.

Tugas yang sama ini akan lebih efektif jika dipisahkan dari program utama dan dirancang menjadi sebuah function atau fungsi.


Pengertian Function (Fungsi) dalam Bahasa Java

Secara sederhana, function adalah kode program yang dirancang untuk menyelesaikan sebuah tugas tertentu, dan merupakan bagian dari program utama. Ketika di sadur ke dalam bahasa indonesia, function ini di sebut juga sebagai fungsi.

Bahasa Java sebenarnya tidak dikenal istilah function, akan tetapi diganti dengan sebutan method. Ini karena secara internal Java sudah menerapkan paradigma object oriented programming (OOP) atau pemrograman berorientasi object.

Untuk memudahkan pembahasan, saya akan tetap memakai istilah function untuk sementara. Pada dasarnya cara kerja function nyaris tidak berbeda dengan method. Materi tentang method akan kita bahas ketika masuk ke tutorial tentang pemrograman object Java.

Berdasarkan siapa yang membuat, function bisa dibedakan ke dalam 2 kelompok:

  1. Built-In Function 
  2. User Defined Function

Built-In Function adalah sebutan untuk function yang sudah ada secara bawaan dari dalam bahasa pemrograman. Sebagai contoh, perintah System.out.println() adalah function atau method bawaan bahasa Java.

Bahasa Java menyediakan banyak function bawaan, belum termasuk yang bisa diakses dari berbagai library atau package pihak ketiga. Setiap function punya tugas masing-masing, misalnya perintah System.out.println() dipakai untuk menampilkan teks ke layar.

Sedangkan User Defined Function adalah function yang kita (sebagai programmer) yang membuatnya sendiri. Jenis function inilah yang akan kita bahas.


Cara Membuat Function dalam Bahasa Java

Berikut format dasar cara penulisan function dalam bahasa Java:

static tipeDataKembalian namaFunction() {
  // Isi function disini...
  // Isi function disini...
  return nilai;
}

Keyword static dipakai untuk membuat function yang tidak butuh instansiasi object. Dalam tutorial ini saya tidak akan membahas apa itu instansiasi object karena cukup panjang dan akan menjadi jatah tutorial OOP Java. Untuk sementara bisa dianggap bahwa semua function di Java harus diawali dengan perintah static.

Keyword tipeDataKembalian bisa diisi dengan tipe data nilai yang dikembalikan function. Tipe data ini sudah kita pelajari sebelumnya, seperti int, double atau String. Jika function tidak mengembalikan nilai apapun, tipeDataKembalian ditulis sebagai void. Sebuah function yang tidak mengembalikan nilai kadang disebut juga sebagai procedure.

Penulisan namaFunction boleh bebas, namun kebiasaan programmer Java adalah menulis dalam gaya camelCase, dimana karakter pertama nama function ditulis dengan huruf kecil, kemudian setiap karakter pertama kata berikutnya dalam huruf besar. Antara kata tidak boleh mengandung spasi. Contohnya seperti cariNamaMahasiswa(), prosesFormInput() atau tampilkanHargaBarang().

Setelah penulisan namaFunction, terdapat tanda kurung " () ". Nantinya tanda kurung ini bisa diisi dengan function parameter (akan kita bahas dalam tutorial setelah ini).

Isi dari function berada dalam tanda kurung kurawal yang bisa terdiri dari 1 sampai ribuan baris kode program, tergantung kompleksitas aplikasi yang dibuat.

Jika fungsi tersebut mengembalikan nilai, maka jalankan perintah return seperti di baris 4. Mengenai perintah return ini akan kita bahas dalam tutorial terpisah.

Pendefinisian function ini harus berada di dalam class seperti format berikut:

class NamaClass {
  
  static tipeDataKembalian namaFunction() {
    // Isi function disini...
    // Isi function disini...
    return nilai;
  }
  
  public static void main(String args[]){
    // Jalankan function
    namaFunction()
  }
  
}

Dalam contoh format ini, pendefinisian function ada di baris 3 – 6. Ketika sebuah function di definisikan, function tersebut belum berjalan. Disini kita hanya memberitahu compiler bahasa Java bahwa sebuah function sudah disiapkan.

Agar bisa berjalan, sebuah function harus "dipanggil" dengan cara menulis nama fungsi tersebut di dalam method main(). Inilah yang dilakukan oleh perintah di baris 11.

Mari kita lihat contoh praktek dari cara membuat function dalam bahasa Java.


Contoh Kode Program Function Bahasa Java

Dalam kode program berikut saya membuat sebuah function sapa() yang ketika dijalankan akan menampilkan teks "Halo Duniailkom":

class BelajarJava {
  
  static void sapa() {
    System.out.println("Halo Duniailkom");
  }
    
  public static void main(String args[]){
    sapa();
    sapa();
    sapa();
  }
  
}

Hasil kode program:

Halo Duniailkom
Halo Duniailkom
Halo Duniailkom

Function sapa() tidak mengembalikan nilai, sehingga tipeDataKembalian diisi dengan keyword void. Isi dari function sapa() sendiri hanya 1 perintah System.out.println("Halo Duniailkom") seperti di baris 4.

Setelah di definisikan, sebuah function bisa dijalankan berkali-kali, inilah yang saya lakukan antara baris 11 – 13. Setiap kali perintah sapa() ditulis, akan tampil teks "Halo Duniailkom" di layar.

Sebuah class bisa saja memiliki banyak function. Berikut contohnya:

class BelajarJava {
  
  static void sapaLisa() {
    System.out.println("Hai Lisa");
  }
  
  static void sapaNova() {
    System.out.println("Morning, Nova");
  }
  
  static void sapaRudi() {
    System.out.println("Halo bro,..");
  }
    
  public static void main(String args[]){
    sapaLisa();
    sapaNova();
    sapaRudi();
  }
  
}

Hasil kode program:

Hai Lisa
Morning, Nova
Halo bro,..

Kali ini saya mendefinisikan 3 function di dalam class BelajarJava, yakni function sapaLisa(), sapaNova() dan sapaRudi(). Setiap function berisi perintah System.out.println() yang berbeda-beda.


Variabel di Dalam Function

Untuk function yang kompleks, kita bisa menulis variabel di dalam function tersebut. Berikut contoh penggunaannya:

class BelajarJava {
  
  static void hitungLuasSegitiga() {
    double alas = 5;
    double tinggi = 7;
    double luas = (alas * tinggi) / 2;
    System.out.println("Luas segitiga adalah: "+luas);
  }
  
  public static void main(String args[]){
    hitungLuasSegitiga();
  }
  
}

Hasil kode program:

Luas segitiga adalah: 17.5

Kali ini saya mendefinisikan function hitungLuasSegitiga() di baris 3 – 8. Sesuai dengan namanya, fungsi ini dipakai untuk menghitung luas segitiga.

Di dalam function hitungLuasSegitiga() terdapat variabel alas, tinggi dan luas yang semuanya bertipe double. Variabel alas diisi angka 5 dan variabel tinggi diisi angka 7. Sedangkan variabel luas akan diisi hasil perhitungan (alas * tinggi) / 2, yakni rumus untuk mencari luas segitiga. Kemudian perintah System.out.println() di baris 7 akan menampilkan hasil perhitungan.

Untuk menjalankan function ini, kita harus panggil dengan perintah hitungLuasSegitiga() dari dalam method main di baris 11.


Dalam tutorial ini kita telah membahas pengertian function serta cara pembuatan function dalam bahasa Java. Berikutnya akan dibahas tentang Pengertian Parameter dan Argumen Fungsi.

5 Comments

  1. Wahyu
    06 Oct 20
    • Andre
      06 Oct 20
      • Rahmat
        17 Oct 20
        • Andre
          18 Oct 20
  2. Rangga Surya Prayoga
    01 Jun 21

Add Comment

Leave a Reply to Rangga Surya Prayoga Cancel reply