Kamis, 08 Desember 2011

Method Pada Java

Method pada Java
Metode (Method) adalah sekumpulan statement program yang disatukan menjadi sebuah subprogram atau fungsi, diawali dengan tanda “{“ diakhiri dengan tanda “}”. Ada 2 macam metode dan 1 metode pengendali, yaitu: 
  • Metode kelas : Metode ini dapat dieksekusi walaupun tidak terdapat objek dalam kelas tersebut. Seperti variabel kelas, metode kelas juga dideklarasikan menggunkan keyword static.
  • Metode objek : Metode ini hanya dapat dieksekusi sehubungan dengan objek tertentu.
  • Metode main() : Metode ini digunakan pada saat aplikasi Java dimulai, menggunakan keyword static. Sebelum aplikasi mulai dieksekusi, diperlukan metode walaupun tanpa objek.  
Metode adalah suatu blok dari program yang berisi kode dengan nama dan properti yang dapat digunakan kembali. Metode dapat mempunyai nilai balik atau tidak, penjelasan beserta contohnya adalah sebagai berikut:

Metode tidak membalikkan nilai 
Jika diberi awalan dengan kata void maka metode tersebut tidak memberi nilai balik. 
contoh:
                        void Namametode(){
                        System.out.println(“INI METODE”);
                        }



Metode membalikkan nilai
Jenis kedua adalah jika metode diberi awalan sebuah tipe data maka metode tersebut akan memberi nilai balik data yang bertipedata sama dengan metode tersebut.
contoh :
                         int Namametode(){ int nilai;
                         System.out.println(“Kasih nilai balik”);
                         return nilai; // mengembalikan suatu nilai dari metode
                         }



Selain dua jenis di atas metode juga ada yang diberi parameter
contoh :
                        void Namametode(String a){
                        System.out.println(“INI METODE”); }



Karakteristik Method
Berikut adalah karakteristik dari method :
  1. Dapat mengembalikan satu nilai atau tidak sama sekali
  2. Dapat diterima beberapa parameter yang dibutuhkan atau tidak ada parameter sama sekali.
  3. Setelah method telah selesai dieksekusi, dia akan kembali pada method yang memanggilnya.
Memanggil Instance dan memberikan Variabel dari Method
Untuk mengilustrasikan bagaimana memanggil method, mari kita menggunakan class string sebagai contoh. Anda dapat menggunakan the dokumentasi dari Java API untuk melihat semua method yang tersedia dalam class string. Selanjutnya, kita akan membuat method, kita sendiri. Tapi untuk saat ini, mari terlebih dahulu kita gunakan method yang sudah disediakan oleh Java.
Untuk memanggil sebuah instance method, kita dapat menuliskan :
                           nameOfObject.nameOfMethod( parameters );
mari kita mengambil dua contoh method yang ditemukan dalam class String.



Contoh program seperti di bawah ini :
                             String str1 = "Hello";
                             char x = str2.charAt(0);
                             String str2 = "hello";
                             boolean result = str1.equalsIgnoreCase( str1 );



Pemberian Variabel dalam Method
Pada contoh kita sebelumnya , kita sudah pernah mecoba melewati variabel pada method. Walaupun kita belum dapat membedakan antara perbedaan tipe variabel yang diberikan (passing) ke method dalam Java. Ada dua tipe data variabel passing pada method, yang pertama adalah pass-by-value dan yang kedua adalah pass-by-reference.


Pass-by-Value
Ketika pass-by-values terjadi, method membuat sebuah salinan dari nilai variable yang dikirimkan ke method. Walaupun demikian, method tidak dapat secara langsung memodifikasi nilai variabel pengirimnya meskipun parameter salinannya sudah dimodifikasi nilainya di dalam method.
Contoh :
                         public class TestPassByValue
                         {
                                    public static void main( String[] args ){
                                    int i = 10;
                                    //mencetak nilai i
                                    System.out.println( i );
                                    //memanggil method test
                                    //passing i pada method test test( i );
                                    //Mencetak nilai i
                                    System.out.println( i );
                                    }
                                    public static void test( int j ){ //merubah nilai parameter j
                                    j = 33;
                                    }
                         }

Pada contoh di atas, kita memanggil method tes dan melewatkan nilai variabel i sebagai parameter. Nilai pada i disalinkan ke variable j pada method. Pada kondisi ini variabel jadalah merupakan variabel pengganti pada method tes, jika nilai j berubah maka nilai variabel i yang terletak pada main tidak akan ikut berubah walaupun awalnya variabel j merupakan salinan dari variabel i.


Pass-by-reference
Ketika sebuah pass-by-reference terjadi, alamat memori dari nilai pada sebuah variable dilewatkan pada saat pemanggilan method. Hal ini berarti bahwa method menyalin alamat memori dari variabel yang dilewatkan pada method. Ini tidak seperti pada pass-by-value, method dapat memodifikasi variabel asli dengan menggunakan alamat memori tersebut, meskipun berbeda nama variabel yang digunakan dalam method dengan variabel aslinya, kedua variabel ini menunjukkan lokasi dari data yang sama.
contoh :
                                  class TestPassByReference
                                  {
                                              public static void main( String[] args ){
                                              //membuat array integer
                                              int []ages = {10, 11, 12};
                                              //mencetak nilai array
                                              for( int i=0; i<ages.length; i++ ){
                                                          System.out.println( ages[i] );
                                                          }
                                              }
                                              test( ages );
                                              for( int i=0; i<ages.length; i++ ){
                                                          System.out.println( ages[i] );
                                                          }
                                              public static void test( int[] arr ){ //merubah nilai array
                                                         for( int i=0; i<arr.length; i++ ){
                                                         arr[i] = i + 50;
                                                         }
                                              }
                                  }



Memanggil Method Static
Method Static adalah method yang dapat dipakai tanpa harus menginisialisasi suatu class (maksudnya tanpa menggunakan variabel terlebih dahulu). Method static hanya dimiliki oleh class dan tidak dapat digunakan oleh instance (atau objek) dari suatu class. Method static dibedakan dari method yang dapat instance di dalam suatu class oleh kata kunci static.
Untuk memanggil method static, ketik :
                   Classname.staticMethodName(params);
Contoh dari static method yang digunakan :
                   System.out.println(“Hello world”);
                   int i = Integer.parseInt(“10”);
                   String hexEquivalent = Integer.toHexString( 10 );



Konstruktor
Konstruktor adalah suatu metode yang dapat digunakan untuk memberi nilai awal pada saat objek diciptakan. Konstruktor akan dipanggil secara otomatis begitu objek diciptakan. Konstruktor memiliki ciri :
a. namanya sama dengan nama kelas
b. Tidak mengembalikan nilai ( dan juga tidak boleh ada kata void didepannya)
Jika constructor tidak didefinisikan, Java memberikan constructor dengan nama constructor_default. Constructor default tidak melakukan apa-apa, namun semua variabel yang diinisialisasi dianggap sebagai berikut:
  • Variabel numerik diset ke 0
  • String diset ke null
  • Variabel boolean di set ke false
Constructor tidak memiliki tipe hasil, walaupun constructor bisa public, private, atau protected. Sebagian constructor bersifat public.
contoh :
                         class Coba
                         {
                         Coba(){ //Ini yang namanya konstruktor

                         System.out.println(“Ini Konstruktor”);
                         }
                         public static void main(String[] args)
                         {                        

                         Coba obj=new Coba();
                         }
                         }

Jika konstruktor dipanggil dari kelas turunan, maka caranya adalah dengan menuliskan kata super(); pada class turunan. Untuk penurunan sifat akan dibahas pada pertemuan selanjutnya Konstruktor juga ada yang diberi parameter
contoh :
                       konstrk(String a){
                       System.out.println(“INI KONSTRUKTOR”);}

1 komentar:

Posting Komentar