Method

19
Method

description

Method. Method. Method dalam banyak bahasa pemrograman dikenal juga sebagai function atau procedure Dalam pemrograman berorientasi objek,fungsi dari method adalah sebagai suatu operasi atau kegiatan yang dapat dilakukan oleh objek - PowerPoint PPT Presentation

Transcript of Method

Page 1: Method

Method

Page 2: Method

Method

Method dalam banyak bahasa pemrograman dikenal juga sebagai function atau procedure

Dalam pemrograman berorientasi objek,fungsi dari method adalah sebagai suatu operasi atau kegiatan yang dapat dilakukan oleh objek

Cara terbaik untuk membangun dan merawat program yang besar adalah dengan cara membagi program besar tersebut ke dalam bagian-bagian (modul) yang lebih kecil, yakni class dan method

Page 3: Method

Pendeklarasian Method

tipedata namaMethod (tipedata namaParameter)

{

//statement

}

Contoh :String getNama(String nama){

return nama;

}

void kali(int x, int y){

//statement

}

Page 4: Method

Pendeklarasian Method

Keterangan :•tipedata merupakan tipe data primitif ataupun

tipe data referensi yang dikenal dalam Java

•tipedata juga dapat berupa void jika method tidak mengembalikan nilai apapun

• Parameter adalah sekumpulan variabel yang dideklarasikan dengan dipisahkan oleh koma (,)

• Parameter bersifat opsional, digunakan untuk menerima passing data dari luar method

Page 5: Method

Pendeklarasian Method

• Jika tipedata dari method bukan void maka harus menambahkan statement berikut di dalam method pada baris yang paling akhir

return nilai_yang_dikembalikan;

• Nilai yang dikembalikan harus mempunyai tipe data yang sama dengan tipe data dari method

Page 6: Method

Pendeklarasian Method

Catatan : Jika pada saat pendeklarasian metode tidak

menggunakan parameter, maka pada saat pemanggilan metode tersebut juga tidak memakai parameter/argumen.

Sebaliknya, jika pada saat pendeklarasian metode menggunakan parameter, maka pada saat pemanggilan metode tersebut juga harus menggunakan parameter/argumen yang sesuai.

Page 7: Method

Konversi Argumen

Pada class Math di java.lang ada method sqrt yang dapat menerima nilai integer walaupun pada saat pendeklarasian method sqrt tersebut menerima nilai double.

Ini terjadi karena method sqrt jika menerima nilai integer akan mengubahnya menjadi nilai double, kemudian diproses dalam pencarian sqrt (square root) nya.

Contoh :

System.out.println(Math.sqrt(4));

Page 8: Method

Contoh Procedure (tanpa Return)

Page 9: Method

Contoh Function (dengan Return)

Page 10: Method

public class Buku{

void cetakJudul(String judul){

System.out.println("Judul Buku : "+judul);

}

String cetakPengarang(String nama){

return nama;

}

public static void main(String[] args){

Buku objBuku = new Buku();

objBuku.cetakJudul("Java How to Program");

String nama = cetakPengarang("Deitel");

System.out.println(nama);

}

}

Page 11: Method

Penggunaan this

Keyword this digunakan bila nama varibel lokal = nama parameter

Page 12: Method

Overloading Method

Terjadi jika terdapat beberapa method yang memiliki nama sama, namun memiliki parameter yang berbeda-beda

Hal ini dapat terjadi karena dalam proses pemanggilan metode, Java melihat kepada nama metode, jumlah parameter dan tipe parameter dari metode tersebut

Page 13: Method

Contoh Overloading Method

Page 14: Method

Recursion Recursive method

• Memanggil dirinya sendiri (directly or indirectly)

• Method membagi masalah

• Base case

• Masalah yang lebih simple

• Sampai ketemu dengan base case

Page 15: Method

Fig. 6.14 Recursive evaluation of 5!.

2! = 2 * 1 = 2 is returned

(a) Sequence of recursive calls. (b) Values returned from each recursive call.

Final value = 120

5! = 5 * 24 = 120 is returned

4! = 4 * 6 = 24 is returned

3! = 3 * 2 = 6 is returned

1 returned

5!

1

4 * 3!

3 * 2!

2 * 1!

5!

1

4 * 3!

3 * 2!

2 * 1!

5 * 4! 5 * 4!

Page 16: Method

public static void main(String args[ ]){ for (long counter=0; counter<=10; counter++) System.out.println(“Factorial” + counter + “=” + factorial(counter));}

public long factorial(long number) { // base case if (number <= 1) return 1;

// recursive step else return number * factorial( number - 1 );

} // end method factorial

Recursion

Page 17: Method

Contoh Lain: Deret Fibonacci Fibonacci series

• Each number in the series is sum of two previous numbers

• e.g., 0, 1, 1, 2, 3, 5, 8, 13, 21…

fibonacci(0) = 0 fibonacci(1) = 1fibonacci(n) = fibonacci(n - 1) + fibonacci( n – 1 )

• fibonacci(0) and fibonacci(1) are base cases

Page 18: Method

Fig. 6.17 Set of recursive calls for fibonacci (3).

return

return

+

+ return 1

return 1

fibonacci( 2 ) fibonacci( 1 )

fibonacci( 1 ) fibonacci( 0 )

return 0

fibonacci( 3 )

Page 19: Method