
Tutorial Java OOP: Mengenal Lambda Expression untuk Membuat Fungsi Anonymous di Java
Mendengar kata “Anonymous”…
…mungkin yang akan terpikirkan dibenakmu adalah orang-orang ini:

Haha 😄, bukan ini yang akan kita bahas.
Istilah anonymous memang untuk menggambarkan sesuatu yang tak memiliki nama. Nah di Java, juga ada fungsi anonymous dan class anonymous.
Apa itu fungsi anonymous?
Bagaimana cara membuatnya?
Mengapa harus menggunakan fungsi anonymous?
Mari kita bahas lebih dalam…
Apa itu Fungsi Anonymous?
Fungsi anonymous adalah fungsi yang tidak memiliki nama. Fungsi anonymous di Java dikenal juga dengan lambda expression.
Fungsi anonymous biasanya dibuat hanya untuk sekali pakai.
Artinya, saat kita membuat fungsi anonymous, kita akan mengeksekusinya saat itu juga. Tidak bisa dipanggil lagi seperti fungsi biasa.
Fungsi ini mulai ditambahkan pada JDK 8.
Jika kamu menggunakan JDK di bawah 8, maka kamu harus upgrade dulu agar bisa menggunakan fungsi anonymous.
Oke, kalau begitu.. bagaimana cara membuat fungsi anonymous?
Cara Membuat Fungsi Anonymous di Java
Berikut ini adalah bentuk umum lambda expression atau fungsi anonymous di Java:
Gampang kan?
Ini simbol-simbol yang perlu kamu ingat:
() -> {}
Keterangan:
()
tempat kita menaruh parameter.->
(operator lambda) simbol yang menandakan fungsi ini adalah lambda/anonymous.{}
body fungsinya.
Contoh:
(int x, int y) -> { return x + y }
Sebenarnya simbol yang perlu diingat adalah simbol lambda (->
), karena simbol ini yang membedakan fungsi anonymous dengan fungsi biasa.
Untuk tanda kurung yang ini ()
dengan yang ini {}
, di fungsi biasa juga ada.
Mari kita lihat contohnya:
// ini fungsi biasa
int jumlahkan(int a, int b){
return a + b;
}
// ini fungsi anonymous
(int a, int b) -> { return a + b }
Bahkan tanpa kurung kurawal juga bisa:
(int a, int b) -> return a + b;
Karena cuma ada satu baris ekspresi, maka tanda kurung {}
boleh tidak ada.
Oh iya, fungsi anonymous dapat kita buat di berbagai tempat seperti:
- Pada Deklarasi variabel;Contoh:
- Pada pengisian variabel dan array;Contoh:
- Pada saat mengembalikan nilai dengan return;Contoh:
- Pada body lambda itu sendiri;Contoh:
- Pada ekspresi kondisional (
?:
)Contoh:
Mengapa Harus Pakai Fungsi Anonymous?
Lambda expression atau fungsi anonymous sebenarnya hadir untuk menyempurnakan class anonymous. 1
Class anonymous biasanya digunakan untuk mengimplementasikan interface dan class abstrak.
Tapi masalahnya:
Saat interface hanya memiliki satu method saja untuk diimplementasikan. Kita harus membuat class (anonymous) baru.
Padahal kan kita cuma butuh method-nya saja.
Di sini lah saat yang tepat untuk menggunakan fungsi anonymous atau lambda expression.
Bahkan Netbeans juga akan menyarankan menggunakan lambda expression apabila menemukan kasus ini.

Contoh Program Fungsi Anonymous
Buatlah proyek baru di Netbeans dengan nama ContohLambda
.

Setelah itu, buat sebuah interface baru pada pacakage <default package>
dengan nama Clickable
dan isi kodenya seperti ini:
interface Clickable {
void onClick();
}
Setelah itu, buatlah class Button
dengan isi seperti ini:
public class Button {
private Clickable action;
void setClickAction(Clickable action){
this.action = action;
}
void doClick(){
action.onClick();
}
}
Terakhir, buatlah class Main
dengan isi seperti ini:
public class Main {
public static void main(String[] args) {
Button btn = new Button();
// membuat class anonymous untuk implementasi interface
btn.setClickAction(new Clickable() {
@Override
public void onClick() {
System.out.println("Tombol sudah diklik!");
System.out.println("Yay!");
}
});
// mencoba klik tombol
btn.doClick();
}
}
Perhatikan baris kode yang saya tandai di atas..
Di sana kita menggunakan class anonymous untuk mengimplementasikan interface Clickable
.
Nah, kalau mau lebih sederhana.. kita bisa pakai lambda expression.
Sekarang coba ubah kodenya menjadi seperti ini:
public class Main {
public static void main(String[] args) {
Button btn = new Button();
// membuat class anonymous untuk implementasi interface
btn.setClickAction(() -> {
System.out.println("Tombol sudah diklik!");
System.out.println("Yay!");
});
// mencoba klik tombol
btn.doClick();
}
}
Lebih sederhana yang mana?
Tentu saja yang menggunakan lambda expression.
Berikut ini hasil output dari program tersebut:

Akses Variabel untuk Fungsi Anonymous
Pada dasarnya, fungsi anonymous adalah bentuk sederhana dari class anonymous.
Jadi dia akan memiliki akses variabel yang sama seperti class anonymous.
Kalau tidak percaya, coba buktikan dengan membuat variabel di luar fungsi anonymous.
Lalu akses variabel tersebut dari dalam fungsi anonymous.
public class Main {
public static void main(String[] args) {
Button btn = new Button();
String name = "Petani Kode";
// membuat class anonymous untuk implementasi interface
btn.setClickAction(() -> {
System.out.println("Tombol sudah diklik!");
System.out.println("Yay!");
System.out.println("Hello " + name);
});
// mencoba klik tombol
btn.doClick();
}
}
Fungsi anonymous akan bisa mengakses variabel yang berada di dalam class (variabel global), dan lokal yang ada di method tempat anonymous class digunakan.
Sekian tutorial Java OOP kali ini tentang fungsi anonymous. Pelajari tutorial pemrograman lainnya pada artikel-artikel di blog ini!
Recent Post
-
YouTube Uji Coba Paket Premium Duo Hemat untuk Dua Orang
-
RSUD Bunda Gunakan Teknologi Robotik Gen 2 untuk Operasi yang Lebih Aman
-
Google Bocorkan Desain Android Terbaru yang Lebih Ekspresif
-
Apple Kirim Peringatan Serangan Spyware ke Pengguna iPhone
-
Mistral AI, Inovasi Kecerdasan Buatan dari Prancis yang Saingi ChatGPT
-
TikTok Didenda Rp 9,8 Triliun Karena Ketahuan Kirim Data Pengguna ke China
-
Amazon Nova Premier Hadir dengan Kapasitas Konteks hingga 1 Juta Token
-
Fortnite Kembali Hadir di App Store, Apple Kalah di Pengadilan
Categories
- Business (150)
- Company Profile (3)
- Developer Connect (126)
- HR and L&D (23)
- Human Reasearch and Development (15)
- Landing Page (2)
- Marketing (27)
- Media Relations (72)
- News (39)
- Public Relations (48)
- Story (8)
- Technology (364)
- Tips and Trick (73)
- Toko Online (2)
- Uncategorized (25)
- Video & Tips (13)
- Wesclic (30)
Tags
Read More
YouTube Uji Coba Paket Premium Duo Hemat untuk Dua Orang
titah 08/05/2025 0YouTube selalu berusaha memberikan pengalaman terbaik bagi penggunanya. Untuk itu, mereka kini tengah menguji coba paket Premium Duo, yang memungkinkan dua orang untuk berbagi langganan…
RSUD Bunda Gunakan Teknologi Robotik Gen 2 untuk Operasi yang Lebih Aman
titah 08/05/2025 0Teknologi di dunia medis terus berkembang dan membawa banyak perubahan. Salah satu inovasi terbaru yang…
Google Bocorkan Desain Android Terbaru yang Lebih Ekspresif
titah 08/05/2025 0Google selalu berusaha meningkatkan pengalaman pengguna Android melalui desain yang lebih menarik dan mudah digunakan.…
Apple Kirim Peringatan Serangan Spyware ke Pengguna iPhone
titah 08/05/2025 0Perangkat digital, terutama smartphone, kini menjadi bagian penting dalam kehidupan sehari-hari. Mulai dari komunikasi hingga…
Mistral AI, Inovasi Kecerdasan Buatan dari Prancis yang Saingi ChatGPT
titah 08/05/2025 0Mistral AI, sebuah perusahaan asal Prancis, mulai mencuri perhatian dunia dengan kemajuan teknologi kecerdasan buatannya.…
Categories
- Business (150)
- Company Profile (3)
- Developer Connect (126)
- HR and L&D (23)
- Human Reasearch and Development (15)
- Landing Page (2)
- Marketing (27)
- Media Relations (72)
- News (39)
- Public Relations (48)
- Story (8)
- Technology (364)
- Tips and Trick (73)
- Toko Online (2)
- Uncategorized (25)
- Video & Tips (13)
- Wesclic (30)
Popular Tags