Lompat ke konten Lompat ke sidebar Lompat ke footer

Static Method dan Instance Method Java dan Fungsinya

Dalam artikel ini akan dipelajari Instance method dan Static method pada bahasa pemrograman Java yang akan dijelaskan sebagai berikut.


Sebelum lebih lanjut mempelajari materi tentang Static Method dan Instance Method Java dan Fungsinya, terlebih dahulu pelajari materi tentang: PUBLIC STATIC VOID MAIN Java dan Fungsinya, Overloading dan Overriding Static Java dan Fungsinya, dan Shadowing Fungsi Static Java dan Fungsinya.

Dalam pemrograman Java, terdapat dua jenis metode yang umum digunakan: static method dan instance method. Kedua jenis metode ini memiliki karakteristik dan fungsionalitas yang berbeda, dan pemahaman tentang keduanya sangat penting untuk pengembangan aplikasi Java yang efektif. Dalam artikel ini, akan dijelajahi static method dan instance method dalam Java beserta fungsinya.

Instance method

Instance method adalah method yang membutuhkan object dari class-nya sendiri untuk diciptakan sebelum method tersebut dipanggil. Untuk memanggil method instance, maka harus diciptakan object dari class bersamaan class tersebut diciptakan.

public void coba(String name)
{/* code program yang akan dieksekusi... */}
/* Return type dapat berupa intfloat, string, atau tipe data yang didefinisikan oleh user */

Alokasi memori: method disimpan dalam ruang generasi permanen dari heap, tetapi parameter atau argumen yang dilewatkannya, variabel lokal, dan nilai return dialokasikan dalam stackMethod tersebut dipanggil dalam class yang sama dimana class tersebut berada atau dari class yang berbeda yang didefinisikan baik dalam package yang sama ataupun berbeda bergantung pada jenis akses yang disediakan untuk method instance yang diinginkan.

Fungsi Instance Method:
  • Akses ke Data Objek: Instance method dapat mengakses dan memanipulasi data yang terkait dengan instance objek, membuatnya cocok untuk operasi yang spesifik untuk setiap instance objek.
  • Fleksibilitas: Instance method dapat memiliki perilaku yang berbeda untuk setiap instance objek, memungkinkan kelas untuk menyimpan status dan perilaku yang berbeda untuk setiap objeknya.
  • Polimorfisme: Instance method mendukung polimorfisme, yang memungkinkan kelas turunan untuk mengganti implementasi metode yang diwarisi dari kelas induk.

Point penting:
  • Instance method adalah milik dari object class tetapi tidak pada class yang akan dipanggil setelah diciptakan object dari class tersebut.
  • Setiap object yang diciptakan dari class memiliki duplikat dari instance method  class.
  • Bisa dilakukan overriding ketika telah diselesaikan menggunakan dynamic binding pada saat runtime.

Contoh:

// Contoh ilustrasi akses dari

// instance method.

import java.io.*

 

class Foo

String name = ""

// Instance method dipanggil

// bersamaan dengan class yang

// sama atau dari class lain

// yang dedifinisikan dalam

// pakcage yang sama atau dari

// package yang berbeda.

public void bons(String name)

{this.name = name;} 

 

class MKN

public static void main (String[] args

{

// Ciptakan instance dari

// class.

Foo ob = new Foo(); 

  

// Memanggil instance method

// dalam class 'Foo'.

ob.bons("MakanNasiPadang"); 

System.out.println(ob.name);}

}

Output:
MakanNasiPadang

Static Method

Static method adalah method pada Java yang dapat dipanggil tanpa menciptakan object dari classMethod tersebut direferensikan oleh class name itu sendiri atau referensi untuk object dari class. Static method adalah metode yang terkait dengan kelas, bukan dengan instance objek dari kelas tersebut. Static method dapat diakses langsung dari kelas tanpa perlu membuat objek dari kelas tersebut. Berikut adalah contoh penggunaan static method dalam Java:

public static void bons(String name)
{/* code program yang akan dieksekusi... */}
/* harus memiliki static modifier dalam deklarasinya */
/* return tipe dapat berupa intfloatstring, atau tipe data yang didefinisikan oleh user */

Alokasi memori: Disimpan pada ruang generasi permanen dari heap karena terkait dengan class, dimana lokasinya berada tidak menuju object class itu sendiri. Tetapi variabel lokal dan argumennya yang diterukan beserta argumen yang diteruskan, disimpan dalam stack karena merupakan bagian dari class sehinggga dapat dipanggil tanpa membuat object dari class tersebut.

Fungsi Static Method:
  • Kemudahan Akses: Static method dapat diakses langsung dari kelas tanpa perlu membuat objek dari kelas tersebut.
  • Fungsi Umum: Static method sering digunakan untuk mendefinisikan operasi atau fungsi umum yang tidak terkait dengan instance kelas tertentu.
  • Kode Bersih: Static method membantu menjaga kode tetap bersih dan terorganisir dengan memisahkan fungsionalitas yang berbeda ke dalam metode yang relevan.

Baca Juga:

Point penting: 
  • Static method berasosiasi terhadap class yang dapat dipanggil tanpa menciptakan instance dari classClassName.methodName(args).
  • Dirancang dengan tujuan untuk berbagi diantara semua object yang diciptakan dari class yang sama.
  • static method tidak bisa overriding. Tetapi bisa overloading ketika diselesaikan menggunakan static binding oleh kompilator pada waktu kompilasi program.

Contoh:

// Contoh ilustrasi akses

// static method dari class.

import java.io.*

 

class Bons

public static String bonsName = ""

public static void bons(String name)

{bonsName = name;} 

 

class MKN 

public static void main (String[] args){ 

// Mengakses static method

// bons() dan field oleh class

// name itu sendiri.

Bons.bons("elfan"); 

System.out.println(Bons.bonsName); 

  

// Mengakses static method

// bons() dengan mengunakan

// objek referensi.

Bons obj = new Bons(); 

obj.bons("mauludi"); 

System.out.println(obj.bonsName);} 

}

Output:
elfan
mauludi

Catatan: variabel static dan nilainya (data primitif atau referensi) didefinisikan dalam class yang disimpan dalam ruang memori PermGen.

Jika Static Variabel Mengacu pada Suatu Object:

static int i = 1;
static Object obj = new Object();

Pada baris pertama, value 1 akan disimpan dalam section PermGen. Pada baris kedua, referensi obj dapat disimpan dalam section PermGen dan object-nya mengacu untuk disimpan dalam section heap.

Waktu Menggunakan Static Method:
  • Ketika memiliki code program yang dapat dibagi ke semua instance dari class yang sama, dan meletakkan porsi dari code program ke method static.
  • Pada dasarnya digunakan untuk mengakses field static dari class.

Instance Method dan Static Method:
  • Instance method dapat mengakses instance method dan instance variabel secara langsung.
  • Instance method dapat mengakses static variabel dan static method secara langsung.
  • Static method dapat mengakses variabel static dan method static secara langsung.
  • Static method tidak dapat mengakses instance method dan instance variabel secara langsung. static method harus menggunakan referensi menuju object dan static method tidak dapat menggunakan keyword this, karena tidak ada contoh untuk 'this' untuk dirujuk.

Kesimpulan:
  • Static method adalah metode yang terkait dengan kelas itu sendiri dan dapat diakses langsung dari kelas tanpa perlu membuat objek dari kelas tersebut.
  • Instance method adalah metode yang terkait dengan instance objek dari kelas dan memerlukan pembuatan objek sebelum penggunaannya.
  • Keduanya memiliki fungsinya masing-masing dalam pengembangan aplikasi Java, dan pemilihan antara keduanya tergantung pada kebutuhan dan desain aplikasi yang sedang dibuat.

Dengan memahami perbedaan antara static method dan instance method dalam Java, pengembang dapat menggunakan keduanya secara efektif sesuai dengan kebutuhan aplikasi. Static method cocok untuk operasi yang terkait dengan kelas secara keseluruhan, sementara instance method berguna untuk operasi yang spesifik untuk setiap instance objek dari kelas.

Referensi Tambahan:

Artikel ini didedikasikan kepada: Rosa Dyarma Syahda Firens, Safhira Kumala Dewi, Shinta Hidhayatuzzaroh Munawaroh, Tania Rosa Ristanti, dan Tasya Mayta Salsabella.

5 komentar untuk "Static Method dan Instance Method Java dan Fungsinya"

  1. Apa itu keyword static Java?

    BalasHapus
    Balasan
    1. Keyword static pada Java digunakan terutama pada bagian menejemen memori. Keyword static adalah milik class ketimbang milik instance class. Static juga dapat berupa variabel atau dikenal sebagai variabel class.

      Hapus
  2. Apa yang dimaksud dengan instance method Java?

    BalasHapus
    Balasan
    1. Variabel instance pada Java adalah variabel non-static yang ditentukan pada class diluar method, constructor, atau block apapun. Setiap object class memiliki salinan terpisah atau contoh variabel tersebut.

      Hapus
  3. Instance method pada Java pada dasarnya adalah method dari sebuah class. Dengan kata lain, non static method yang dideklarasikan dalam class adalah method instance. Method semacam ini membutuhkan object class-nya untuk dibuah sebelum dapat dipanggil oleh program. Untuk memanggil method instance, yang perlu dilakukan terlebih dahulu adalah membuat object class-nya.

    BalasHapus

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 -