Lompat ke konten Lompat ke sidebar Lompat ke footer

Menggunakan THIS Java dan Fungsinya

Keyword 'this' adalah referensi variabel yang mengacu pada objek saat ini dalam bahasa pemrograman Java.

Sebelum lebih lanjut mempelajari materi tentang cara Menggunakan THIS Java dan Fungsinya, terlebih dahulu pelajari materi tentang: Pengertian Asosiasi Komposisi dan Agregasi Java, Cara Access dan Non Access Modifier Java dan Fungsinya, dan Acces Modifier Java dan Fungsinya.

Dalam pemrograman Java, "this" adalah kata kunci yang digunakan untuk merujuk pada objek saat ini di mana kode sedang dieksekusi. "this" digunakan untuk menghindari kebingungan antara variabel kelas dan parameter atau variabel lokal dengan nama yang sama. Dalam artikel ini, akan dibahas cara penggunaan "this" dalam Java beserta fungsinya. Berikut ini beberapa cara untuk menggunakan 'this' pada Java:

Cara Menggunakan "this" dalam Java:
  • Merujuk Variabel Instance: "this" digunakan untuk merujuk pada variabel instance (variabel kelas) saat ini. Ini digunakan ketika terdapat konflik nama antara variabel instance dan parameter atau variabel lokal dalam sebuah metode.
  • Mengakses Metode atau Konstruktor Lain: "this" juga dapat digunakan untuk memanggil metode atau konstruktor lain dalam kelas yang sama. Ini berguna ketika ingin memanggil metode atau konstruktor lain dengan parameter yang sesuai dari metode atau konstruktor saat ini.
  • Mengembalikan Objek Saat Ini: Dalam sebuah metode, "this" dapat digunakan untuk mengembalikan objek saat ini. Ini berguna dalam kasus metode yang ingin mengembalikan objek pada saat tertentu.

Contoh: Menggunakan keyword 'this' yang mengacu pada variabel class instance saat ini.

// Program Java untuk

// penggunaan keyword 'this'

// yang mengacu pada variabel

// instance class saat ini.

class Test 

{

 

int a; 

int b; 

 

// Parameterisasi constructor

Test(int a, int b){ 

this.a = a; 

this.b = b;} 

 

void display(){ 

// menampilkan nilai dari

// variabel a dan b.

System.out.println("a = " 

+

+ " b = " 

+ b);} 

 

public static void main(String[] args){ 

Test object = new Test(10, 20); 

object.display();}

 

}

Output:
a = 10 b = 20

Contoh: Menggunakan this() untuk memanggil class constructor saat ini.

// Program java menggunakan

// this() untuk memanggil

// class constructor saat ini.

class Test 

{

 

int a; 

int b; 

 

/* Default constructor */

Test(){ 

this(10, 20); 

System.out.println("Dalam"

+" default constructor \n");} 

 

// Parameterisasi constructor

Test(int a, int b){ 

this.a = a; 

this.b = b; 

System.out.println("Dalam"

+" parameterisasi"

+" constructor");} 

 

public static void main(String[] args){ 

Test object = new Test();}

 

}

Output:
Dalam parameterisasi constructor
Dalam  default constructor

Contoh: Menggunakan keyword 'this' untuk return class instance saat ini.

// Program Java untuk

// menggunakan keyword 'this'

// untuk return class instance

// saat ini.

class Test 

 

int a; 

int b; 

 

/* Default constructor */

Test(){ 

a = 10

b = 20;} 

 

// Method returns class

// instance saat ini.

Test get(){ 

return this;} 

 

// menampilkan nilai dari

// variabel a dan b.

void display(){ 

System.out.println("a = " 

+

+" b = " 

+b);} 

 

public static void main(String[] args){ 

Test object = new Test(); 

object.get().display();}

 

}

Output:
a = 10 b = 20

Baca Juga:
Contoh: Menggunakan keyword 'this' sebagai parameter method.

// Program java untuk

// menggunakan keyword 'this'

// sebagai parameter method.

class Test 

 

int a; 

int b; 

 

/* Default constructor */

Test(){ 

a = 10

b = 20;} 

 

// Method yang menerima

// keyword 'this' sebagai

// parameter. 

void display(Test obj){ 

System.out.println("a = " 

+

+" b = " 

+b);} 

 

// Method returns class

// instance saat ini.

void get(){ 

display(this);} 

 

public static void main(String[] args){ 

Test object = new Test(); 

object.get();}

 

}

Output:
a = 10 b = 20

Contoh: Menggunakan keyword 'this' untuk memanggil class method saat ini.

// Program Java menggunakan

// keyword 'this' untuk

// memanggil class method saat

// ini. 

class Test

 

void display(){ 

/* memanggil fuction show() */

this.show(); 

System.out.println("Dalam"

+" fungsi display");} 

 

void show(){ 

System.out.println("Dalam"

+" fungsi show");} 

 

public static void main(String args[]) { 

Test t1 = new Test(); 

t1.display();}

 

}

Output:
Dalam fungsi show
Dalam fungsi display

Contoh: Menggunakan keyword 'this' sebagai argumen dalam memanggil constructor.

// Program Java menggunakan

// keyword 'this' sebagai

// argumen dalam memanggil

// constructor.

 

// Class dengan objek dari

// class B sebagai data

// membernya. 

class

{

 

B obj; 

// Parameterisasi constructor

// dengan objek dari B sebagai

// sebuah parameter.

A(B obj){ 

this.obj = obj; 

// panggil display method dari

// class B.

obj.display();} 

 

 

class

 

int x = 5

// Default Contructor yang

// menciptakan sebuah objek

// dari A dengan melewatkannya

// sebagai argumen dalam

// constructor.

B(){A obj = new A(this);} 

 

// method yang memperlihatkan

// nilai dari x.

void display(){

System.out.println("Nilai dari x "

+"dalam Class B : " + x);} 

 

public static void main(String[] args) { 

B obj = new B();}

 

}

Output:
Nilai dari x dalam Class B : 5

Fungsi "this" dalam Java:
  • Menghindari Konflik Nama: Penggunaan "this" membantu menghindari kebingungan atau konflik nama antara variabel instance dan parameter atau variabel lokal dalam sebuah metode. Dengan menggunakan "this", pengembang dapat dengan jelas merujuk pada variabel instance.
  • Klarifikasi Objek Saat Ini: "this" membantu dalam klarifikasi objek saat ini di mana kode sedang dieksekusi. Ini memungkinkan pengembang untuk memanipulasi atau merujuk pada objek saat ini secara eksplisit.
  • Memanggil Metode atau Konstruktor Lain: "this" memungkinkan pengembang untuk memanggil metode atau konstruktor lain dalam kelas yang sama. Ini membantu dalam penggunaan kode yang lebih modular dan mencegah duplikasi kode.
  • Mengembalikan Objek Saat Ini: Dalam beberapa kasus, penggunaan "this" untuk mengembalikan objek saat ini berguna, terutama dalam pengembangan API atau dalam logika pemrograman yang kompleks.

Meskipun "this" memiliki beberapa manfaat fungsi, namun ada juga beberapa kekurangan yang perlu dipertimbangkan dalam penggunaannya:
  • Kompleksitas Kode: Penggunaan "this" yang berlebihan atau tidak tepat dapat menyebabkan kompleksitas kode yang berlebihan. Terlalu banyak penggunaan "this" dalam kode dapat membuatnya sulit dipahami, terutama untuk pengembang baru atau pengembang lain yang membaca kode tersebut.
  • Potensi Kesalahan: Kesalahan dapat terjadi jika "this" digunakan secara tidak tepat, terutama dalam kasus di mana ada banyak variabel lokal dan parameter dengan nama yang sama. Hal ini dapat menyebabkan kebingungan dan kesalahan dalam logika program.
  • Memperlambat Kompilasi: Penggunaan "this" dalam jumlah yang besar atau berlebihan dalam sebuah kelas dapat memperlambat proses kompilasi. Meskipun secara umum tidak signifikan, namun dapat menjadi masalah dalam proyek yang sangat besar atau kompleks.
  • Meningkatkan Ketergantungan Antar-Kelas: Jika "this" digunakan untuk memanggil metode atau konstruktor dari kelas lain dalam kelas yang sama, hal ini dapat meningkatkan ketergantungan antar-kelas. Hal ini dapat menyulitkan pengujian dan pemeliharaan kode, serta membuat kode kurang modular.
  • Membuat Kode Kurang Fleksibel: Penggunaan "this" untuk merujuk ke variabel instance secara langsung dapat membuat kode kurang fleksibel terhadap perubahan. Jika ada kebutuhan untuk mengubah nama variabel instance, penggunaan "this" dalam banyak tempat akan memerlukan perubahan yang luas dalam kode.
  • Membuat Kode Lebih Tidak Terbaca: Terlalu banyak penggunaan "this" dalam kode dapat membuatnya lebih sulit untuk dibaca dan dipahami. Ini terutama terjadi jika "this" digunakan untuk merujuk ke variabel yang jelas atau metode yang sederhana.

Meskipun demikian, kekurangan penggunaan "this" dapat diminimalkan dengan mengikuti praktik terbaik dalam pengembangan kode, seperti penggunaan yang konsisten, membatasi penggunaan "this" pada tempat-tempat yang benar-benar diperlukan, dan memberikan nama yang jelas untuk variabel dan metode. Dengan memahami baik kelebihan maupun kekurangan penggunaan "this", pengembang dapat menggunakan fitur ini secara efektif dalam pengembangan perangkat lunak Java.

Dengan memahami dan menggunakan "this" dengan bijak dalam Java, pengembang dapat menulis kode yang lebih jelas, lebih aman, dan lebih mudah dimengerti. Ini membantu dalam pengembangan aplikasi yang skalabel dan mudah dipelihara seiring waktu.

Referensi Tambahan:

Artikel ini didedikasikan kepada: Mauluda Fitriyana, Muhammad Iqbal As Syegaf, Nadya Yuli Rismawati, Nibrose Zukhruf Febrina, dan Nikodemus Galih Candra Wicaksono.

5 komentar untuk "Menggunakan THIS Java dan Fungsinya"

  1. Apa fungsi keyword 'this' pada bahasa pemrograman Java?

    BalasHapus
    Balasan
    1. Keyword 'this' pengacu pada object saat ini dalam method atau constructor dalam bahasa pemrograman Java. Penggunaan keyword 'this' yang paling umum adalah untuk menghilangkan kebingungan antara atribut class dan parameter dengan nama yang sama, karena atribut class tersebut dibayangi oleh method atau paramter constructor.

      Hapus
  2. Keyword "this" adalah keyword pada Java yang digunakan sebagai referensi ke object class saat ini, dengan method instance dan constructor. Dengan menggunakan keyword 'this' tersebut, user dapat merujuk ke anggota class seperti variabel, constructor, dan method.

    BalasHapus
  3. Apakah keywor 'super' dan 'this' dapat digunakan secara bersamaan pada bahasa pemrograman Java?

    BalasHapus
    Balasan
    1. Constructor harus selalu menjadi statement pertama dalam program Java. Jadi, user tidak bisa memiliki dua statement sebagai statement pertama. Oleh karena itu, maka dipanggil keyword super() dan bisa digunakan untuk memanggil this() dari suatu constructor, namun tidak untuk kedua-duanya. Disini, dijak user menggunakan parameter contructor maka akan terjadi error.

      Hapus

Hubungi admin melalui Wa : +62-896-2414-6106

Respon komentar 7 x 24 jam, mohon bersabar jika komentar tidak langsung dipublikasi atau mendapatkan balasan secara langsung.

Bantu admin meningkatkan kualitas blog dengan melaporkan berbagai permasalahan seperti typo, link bermasalah, dan lain sebagainya melalui kolom komentar.

- Ikatlah Ilmu dengan Memostingkannya -
- Big things start from small things -