• Tidak ada hasil yang ditemukan

PERTEMUAN10 METHOD Recent site activity Chaky_182 PERTEMUAN10 METHOD

N/A
N/A
Protected

Academic year: 2018

Membagikan "PERTEMUAN10 METHOD Recent site activity Chaky_182 PERTEMUAN10 METHOD"

Copied!
49
0
0

Teks penuh

(1)

FEMI DWI ASTUTI

(2)

Method

merupakan bagian code yang dapat dipanggil oleh program utama atau method lain untuk melakukan suatu fungsi tertentu.

Beberapa ciri method:

 Dapat me-return value atau tidak sama sekali.

 Setelah method telah selesai dieksekusi, proses

(3)

Program java yang sudah dibuat sebelumnya

sebenarnya juga sudah berisi sebuah method yaitu main().

Method main adalah sebuah method dalam

java yang namanya harus sama. Method main digunakan pada saat program dijalankan

untuk memanggil perintah-perintah java atau method yang lain. Tanpa main, program

(4)

Format method secara umum

tipe_return-value nama_method(parameter1,

parameter2, …, parameterN) {

deklarasi dan pernyataan; }

(5)

deklarasi method mempunyai 6

komponen

1. Modifier - seperti public, private, dan yang

lain yang akan kita pelajari kemudian.

2. Tipe kembalian (return type)—tipe data dari

nilai yang dikembalikan oleh method, atau void jika method tidak mempunyai nilai kembalian.

3. Nama method—aturan untuk penamaan

(6)

Deklarasi method mempunyai 6

komponen

4. Daftar parameter – pemisah antar parameter input adalah koma, diawali oleh tipe datanya, yang diletakkan diantara tkita kurung ( …daftar parameter…. ). Jika tidak ada parameter, harus menggunakan kurung buka tutup saja ( ).

5. Daftar exception—tidak akan masuk dalam pembahasan di sini

(7)

Penamaan method

Meskipun penamaan method bisa saja

merupakan identifier yang benar, kesepakatan pemberian nama method tetap membatasi.

Secara kesepakatan, nama method harus sebuah

kata kerja dalam huruf kecil atau beberapa kata yang dimulai dengan kata kerja huruf kecil,

diikuti dengan kata sifat, benda, dan lain-lain.

Dalam penamaan beberapa kata huruf pertama

(8)

Contoh penamaan

Lari

lariCepat

getLatarBelakang getDataAkhir

bandingkanDengan setX

(9)

Method

Dalam pemanggilan method / fungsi anggota

kelas, ada beberapa fasilitas yang disediakan :

1.pemanggilan method / fungsi tanpa

menyertakan parameter / argument

2.pemanggilan method / fungsi dengan

menyertakan parameter / argument

3.pemanggilan method / fungsi dengan

(10)

Method tanpa parameter

Contoh:

1.public class Fungsi1{ 2. 

3. public static void garis(){ 4.

System.out.println("================");

5. }

6. 

7. public static void main(String args[]){

8. garis();

9. }

(11)

 Method diatas bersifat static dan bertipe void. Method yang bersifat static bisa langsung dipanggil dengan nama methodnya saja.Sebuah method juga bisa dipanggil lebih dari satu kali.

1. public class Fungsi2{

2. public static void kalimat(){

3. System.out.println("Di dalam method kalimat"); 4. }

5.  

6. public static void main(String args[]){ 7. kalimat();

8. System.out.println("Di dalam main"); 9. kalimat();

(12)

output

Di dalam method kalimat Di dalam main

(13)

Method juga bisa dituliskan di bawah method utama

1. public class Fungsi2{

2. public static void main(String args[]){ 3. kalimat();

4. System.out.println("Di dalam main"); 5. kalimat();

6. } 7.  

8. public static void kalimat(){

9. System.out.println("Di dalam method kalimat"); 10. }

11.}

(14)

Method dengan tipe

Method juga bisa mempunyai tipe. Tipe dari method sama dengan tipe yang digunakan untuk sebuah variabel.

1.public class Fungsi3{

2. public static int jumlah(){ 3. int a = 8, b = 10; 4. return (a + b); 5. }

6. 

7. public static void main(String args[]){

8. System.out.println("Hasil pemanggilan method

jumlah");

9. System.out.println(jumlah()); 10. }

(15)

PEMANGGILAN METHOD

DENGAN MENCIPTAKAN OBYEK

CLASS

Penggunaan sifat static pada method

menyebabkan method tidak perlu dipanggil dengan penciptaan obyeknya. Method main dideklarasikan static agar pada saat

penggunaan tidak perlu menciptakan obyeknya.

Sebagian method tidak dideklarasikan static.

Method yang demikian, bisa dipanggil dengan cara menciptakan obyek class dari method

(16)

contoh

1. public class Fungsi3a{ 2. public int jumlah(){

3. int a = 8, b = 10;

4. return (a + b);

5. }

6. public static void main(String args[]){

7. Fungsi3a obyek = new Fungsi3a();

8. System.out.println("Hasil pemanggilan

method jumlah");

9. System.out.println(obyek.jumlah());

10. }

(17)

Method dengan parameter

Dalam contoh terakhir, dua buah bilangan

dan penjumlahannya terletak pada method jumlah. Sehingga untuk pemanggilan yang lain, hasilnya tetap sama. Jika diinginkan

untuk difungsikan sebagai method penjumlah dua bilangan, tetapi bilangannya selalu

(18)

contoh

1. public class Fungsi4{ 2. public int jumlah(int a){ 3. return (a + a);

4. }

5. public static void main(String args[]){ 6. Fungsi4 obyek = new Fungsi4();

7. System.out.println("Panggil method jumlah dengan parameter 5");

8. System.out.println(obyek.jumlah(5));

9. System.out.println("Panggil method jumlah dengan parameter 13");

10. System.out.println(obyek.jumlah(13)); 11. }

(19)

KETERANGAN

Parameter pada baris ke 2, disebut sebagai

parameter formal.

Parameter formal adalah parameter yang

tertulis dalam definisi method.

Sedangkan parameter pada baris ke 8 dan 10

disebut sebagai parameter aktual.

Parameter aktual adalah parameter yang

berada pada inputan langsung pada saat penggunaan method tersebut.

Nilai parameter aktual dapat berupa variabel

(20)

CATATAN

Parameter bisa lebih dari satu dengan

dipisahkan tanda koma.

Yang perlu diperhatikan pada saat

pemanggilan method adalah jumlah, urutan dan tipe parameter aktual harus sesuai

(21)

CONTOH

1. public class Fungsi5{

2. public float jumlah(int a, float b){ 3. return (a + b);

4. }

5. public static void main(String args[]){ 6. Fungsi5 obyek = new Fungsi5();

7. System.out.println("Panggil method jumlah dengan

parameter 5 dan 5.5");

8. System.out.println(obyek.jumlah(5, 5.5f));

9. System.out.println("Panggil method jumlah dengan

parameter 13 dan 1.3");

10. System.out.println(obyek.jumlah(13, 1.3f)); 11. }

(22)

OUTPUT

Panggil method jumlah dengan parameter 5

dan 5.5

10.5

Panggil method jumlah dengan parameter 13

dan 1.3

(23)

Method tanpa parameter

class organisasiku {

 private

 String nama;  int umur;

 public void ngisi_data(String NAMA, int UMUR)  { if (UMUR >= 17)

 { nama = NAMA;  umur = UMUR;  }

(24)

Method tanpa parameter

{ public static void main(String[] args) {

organisasiku obyek1 = new organisasiku(); obyek1.ngisi_data ("AgungBP",19);

obyek1.cetak_data(); }

(25)

Method dengan parameter

(26)

Method dengan parameter

 class ProgramUtama

(27)

Method dengan nilai balik

 class organisasiku  {

 private

 String nama;  int umur;

(28)

Method dengan nilai balik

 class ProgramUtama

 { public static void main(String[] args)  {

 String TangkapPesan;

 organisasiku obyek1 = new organisasiku();

 TangkapPesan = obyek1.ngisi_data("AgungBP",19);  System.out.println(TangkapPesan);

(29)

Catatan

dalam java, perintah return harus ditulis

pada kurung { } yang paling luar

dalam java tidak diperkenankan pembuatan

variabel yang memungkinkan terjadinya ‘blank value’ (apalagi variabel yang akan digunakan sebagai return value) sehingga

(30)

Contoh function

java

//function tanpa nilai balikan void sayHello(String nama){ System.out.println(nama); }

//function dengan nilai balikan

int hitungLuas(int panjang,int lebar){ int hasil = panjang * lebar;

(31)

Baca analogi ini baik - baik :

 Ibu membuang sampah. Ibu hanya berpikir pekerjaannya

sudah selesai tanpa ada tindak lanjut atas sampah maupun tong sampah. disini tong sampah adalah tempat akhir dari proses membuang sampah, sehingga tidak diperlukan pengawasan/pemrosesan lanjutan.

 Ibu meminta bibi untuk membeli minyak goreng di warung

terdekat karena ibu ingin menggoreng ikan. Disini ibu

membutuhkan minyak goreng sebagai bahan

pemrosesan lanjutan, yang tanpa minyak goreng tersebut ibu tidak akan bisa menghasilkan ikan goren yang lezat.

 Jika anda perhatikan maka akan ada 2 hal yang jelas tertera

(32)

Mengapa menggunakan function?

Method/function diperlukan apabila kita memerlukan

sesuatu secara berulang - ulang.

contoh : awalnya boss mengerjakan semua hal, lalu

kerjaan boss menjadi banyak dan memakan waktu dan perhatian, kemudian boss mempunyai anak buah yang pertama sekretaris, lalu administrasi umum, lalu office boy agar boss bisa fokus dengan kerjaan utama

sementara office boy membuat kopi untuk boss. Jelaskah analogi ini ?

Awal : Bos -> mengerjakan semua hal Next : Bos -> fokus kerjaan utama

sekretaris -> surat menyurat dan jadwal admin umum -> pembelian dan lain2

(33)

contoh

public double luasLingkaran(int jari) {

double luas = pi*(jari*jari); return luas;

(34)

keterangan

public -> method ini dapat dipanggil dari luar. misal main = new Main();

System.out.println(main.luasLingkaran(10));

double -> method ini akan menghasilkan data bertype double.

jika ingin mengubah menjadi tidak menghasilkan apapun gunakan void

return -> kembalikan. ini karena method

mempunyai deklarasi typedata double. sehingga java akan memaksa pengembalian bertypedata double. dengan begitu return disini

(35)

contoh

1. class Mahasiswa { 2. int usia;

3. String nama;

4. void setNilai(String namaMhs, int usiaMhs) { 5. nama = namaMhs;

11. class AksesClass {

12. public static void main(String[] args) { 13. Mahasiswa mhs = new Mahasiswa(); 14. mhs.setNilai("aku", 23);

15. System.out.println(mhs.cetakData()); 16. }

(36)

penjelasan

Di dalam class Mahasiswa kita mendeklarasikan

method setNilai yang memiliki dua parameter untuk mengisikan nilai property nama dan usia. Di dalam class Mahasiswa kita juga

mendeklarasikan sebuah method yang bernama cetakData untuk menampilkan nilai dari property nama dan usia, karena bertipe data String yang mengembalikan nilai maka kita harus

menggunakan kata kunci return.

Lalu selanjutnya di dalam class AksesClass kita

membuat instance atau objek dari class

(37)

Melewatkan Argumen Tipe Data

Primitif

Argumen primitive, seperti int atau double,

dimasukkan ke dalam method dalam bentuk nilai.

Hal ini berarti bahwa setiap perubahan

terhadap nilai dari parameter ada hanya di dalam ruang lingkup method tersebut.

Pada saat method dikembalikan,

(38)

CONTOH

1. public class PassPrimitiveByValue { 2. public static void main(String[] args) { 3. int x = 3;

4. //memanggil passMethod() dengan x sebagai argumen 5. passMethod(x);

6. // mencetak x untuk melihat jika nilainya berubah 7. System.out.println("Sesudah memanggil passMethod, x

= " + x);

8. }

9. // mengubah parameter dalam passMethod() 10. public static void passMethod(int p) {

11. p = 10; 12. }

(39)
(40)

Output

(41)

Melewatkan argumen tipe data

reference

Parameter tipe data referensi seperti objects

juga dimasukkan ke dalam methods melalui nilai (value).

Artinya adalah bahwa pada saat method

kembali ke program yang memanggilnya,

referensi yang dilewatkan akan tetap mereferensi object yang sama seperti sebelumnya.

Namun nilai dari field object bisa diubah

(42)
(43)

Output

(44)

contoh

public void pindahLingkaran(Lingkaran lingkaran, int deltaX, int deltaY)

{

// kode untuk memindahkan nilai awal lingkaran ke x+deltaX, y+deltaY

lingkaran.setX(lingkaran.getX() + deltaX); lingkaran.setY(lingkaran.getY() + deltaY);

//kode yang dituliskan ke sebuah referensi baru ke lingkaran

(45)

Method overloading

Overloading adalah suatu keadaan dimana

beberapa method memiliki nama yang sama tetapi fungsionalitasnya berbeda.

Ciri Overloading :

Nama method harus sama.

Daftar parameter harus berbeda.

(46)

Contoh Method overloading

1. class Manusia { 2. String nama; 3. int usia;

4. void cetak(String namaManusia) { // method yang akan

di-overload

5. nama = namaManusia;

6. System.out.println(”Nama : “€€ + nama); 7. }

8. void cetak(int usiaManusia) { // overloading method

cetak

9. usia = usiaManusia;

10. System.out.println(“Usia : “€€ + usiaManusia); 11. }

(47)

contoh

1. public double kuadrat(double b){

2. System.out.println("Di method bertipe double"); 3. return (b * b);

4. }

5.  

6. public int kuadrat(int b){

7. System.out.println("Di method bertipe integer"); 8. return (b * b);

9. }

10. public static void main(String args[]){ 11. Fungsi6 obyek = new Fungsi6();

12. System.out.println("Panggil method kuadrat dengan parameter 5.5"); 13. System.out.println(obyek.kuadrat(5.5));

14. System.out.println("Panggil method kuadrat dengan parameter 5"); 15. System.out.println(obyek.kuadrat(5));

(48)

output

Panggil method kuadrat dengan parameter

5.5

Di method bertipe double 30.25

Panggil method kuadrat dengan parameter 5 Di method bertipe integer

(49)

catatan

Dalam program diatas, method kuadrat

dipanggil dengan parameter 5.5 (tipe double) dan 5 (tipe integer) tidak mengalami

kesalahan. Hal ini disebabkan karena pada saat pemanggilan method, program mencari

parameter yang sesuai dengan yang dibawa. Sehingga method yang sesuai yang dijalankan oleh compiler.

Dalam method overloading, return value boleh

sama. Jika return value sama, parameternya

Referensi

Dokumen terkait

Terdapat empat model pakaian adat suku Sangihe, yang terbuat dari serat.. kofo 28 yang ditenun

Ada pengaruh model pembelajaran kooperatif tipe Teams Games Tournaments (TGT) terhadap minat belajar matematika di SMPN 2 Sumbergempol tahun ajaran 2016/2017.. Ada

Maka dari itu peneliti tertarik untuk melakukan penelitian ini untuk mengetahui dinamika komunikasi terapeutik yang dilaksanakan oleh terapis dalam kegiatan terapi

Dengan Hak Bebas Royalti Non-ekslusif ini Pusat Perpustakaan IAIN Tulungagung berhak menyimpan, alih media/format mengelola dalam bentuk pangkalan data (data base)/ merawat,

Tahap selanjutnya yaitu proses image enhancement menggunakan AHE, MAHE, CLAHE dan SCLAHE dimana setiap metode akan diaplikasikan pada tiap citra input tanpa elemen RGB dan

Gedung H, Kampus Sekaran-Gunungpati, Semarang 50229 Telepon: (024)

[r]

Jumlah saham yang ditawarkan 208.360.000 Saham Biasa Atas Nama dengan nilai nominal Rp 100,- /saham. Penjamin Pelaksana PT TRIMEGAH SECURITIES Tbk , PT OCBC