0% menganggap dokumen ini bermanfaat (0 suara)
153 tayangan6 halaman

11-Java Methods

Metode adalah sekumpulan kode yang dapat digunakan kembali untuk melakukan tugas tertentu. Metode dapat menerima parameter dan mengembalikan nilai. Metode harus dideklarasikan di dalam kelas dan dapat dipanggil untuk dieksekusi.

Diunggah oleh

Shin Kyuha
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
153 tayangan6 halaman

11-Java Methods

Metode adalah sekumpulan kode yang dapat digunakan kembali untuk melakukan tugas tertentu. Metode dapat menerima parameter dan mengembalikan nilai. Metode harus dideklarasikan di dalam kelas dan dapat dipanggil untuk dieksekusi.

Diunggah oleh

Shin Kyuha
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 6

Pemrograman Platform Khusus I Marwondo, M.Kom.

METHODS (FUNCTION/PROCEDURE)
Method adalah sekumpulan kode yang hanya berjalan saat dipanggil. Kita dapat mengirimkan data,
yang disebut parameter, ke dalam method. Method digunakan untuk melakukan tindakan tertentu,
dan mereka juga dikenal sebagai fungsi. Java hanya mengenal fungsi, tidak mengenal prosedur.
Prosedur pada Java adalah method yang tidak menghasilkan nilai atau void.
Mengapa menggunakan metode? Untuk menggunakan kembali kode: tentukan kode sekali, dan
gunakan berkali-kali.

MEMBUAT METHOD
Method harus dideklarasikan di dalam kelas. Method didefinisikan dengan nama metode, diikuti
dengan tanda kurung (). Java menyediakan beberapa metode yang telah ditentukan sebelumnya,
seperti System.out.println (), tetapi kita juga dapat membuat metode sendiri untuk melakukan
tindakan tertentu.
Contoh :
public class Main {
static void myMethod() {
// code to be executed
}
}

• myMethod() merupakan nama metode


• static berarti bahwa metode tersebut milik kelas Main dan bukan objek dari kelas Main.
Lebih lanjut tentang objek dan cara mengakses metode melalui objek akan dipelajari pada
Pemrograman Berorientasi Objek.
• void menandakan bahwa metode ini tidak menghasilkan nilai.

Setiap method harus menghasilkan nilai oleh karena itu, setiap method harus memiliki parameter
output.

Contoh :
public class Main {
static long hitungLuas() {
// code to be executed
return panjang * lebar;
}
}

• long menandakan bahwa metode ini akan menghasilkan nilai dengan tipe data long.
• return digunakan untuk mengembalikan nilai kepada output. Setiap metode harus di return
kecuali yang bernilai void

MEMANGGIL METHOD
Untuk memanggil metode di Java, cukup dengan menuliskan nama metode diikuti dengan dua
kurung “()” dan semicolon “;”

Contoh :
public class Main {
static void myMethod() {
System.out.println("I just got executed!");
}

public static void main(String[] args) {


myMethod();
long luas=hitungLuas();

S1-Informatika Universitas Informatika dan Bisnis Indonesia


Pemrograman Platform Khusus I Marwondo, M.Kom.
}
}

PARAMETERS DAN ARGUMENTS


Informasi dapat diteruskan ke metode sebagai parameter. Parameter bertindak sebagai variabel di
dalam metode. Parameter ditentukan setelah nama metode, di dalam tanda kurung. Kita dapat
menambahkan parameter sebanyak yang kita inginkan, cukup pisahkan dengan koma.
Contoh berikut memiliki metode yang mengambil String dengan fname sebagai parameter. Ketika
metode ini dipanggil, kita mengirimkan nama depan, yang digunakan di dalam metode untuk
mencetak nama lengkap:
public class Main {
static void myMethod(String fname) {
System.out.println(fname + " Refsnes");
}

public static void main(String[] args) {


myMethod("Liam");
myMethod("Jenny");
myMethod("Anja");
}
}

MULTIPLE PARAMETERS
Kita dapat memiliki parameter sebanyak yang kita suka:
public class Main {
static void myMethod(String fname, int age) {
System.out.println(fname + " is " + age);
}

public static void main(String[] args) {


myMethod("Liam", 5);
myMethod("Jenny", 8);
myMethod("Anja", 31);
}
}

RETURN VALUES
Kata kunci void, yang digunakan dalam contoh di atas, menunjukkan bahwa metode tersebut tidak
boleh mengembalikan nilai. Jika kita ingin metode mengembalikan nilai, kita dapat menggunakan tipe
data primitif (seperti int, char, dll.) Daripada void, dan gunakan kata kunci return di dalam metode:
Contoh :
public class Main {
static int myMethod(int x) {
return 5 + x;
}

public static void main(String[] args) {


System.out.println(myMethod(3));
}
}

Contoh berikut mengembalikan nilai dari dua parameter yang dimiliki metode:
public class Main {
static int myMethod(int x, int y) {
return x + y;
}

S1-Informatika Universitas Informatika dan Bisnis Indonesia


Pemrograman Platform Khusus I Marwondo, M.Kom.
public static void main(String[] args) {
System.out.println(myMethod(5, 3));
}
}

Kita juga dapat menampung nilai balik dari metode ke dalam sebuah variable untuk digunakan
kepentingan lain.
public class Main {
static int myMethod(int x, int y) {
return x + y;
}

public static void main(String[] args) {


int z = myMethod(5, 3);
System.out.println(z);
}
}

METHOD DENGAN STRUKTUR KONTROL


Metode berisi pernyataan-pernyataan yang digunakan untuk tujuan tertentu. Pernyataan dalam
metode dapat berupa struktur control baik itu kondisional, pemilihan, maupun pengulangan atau
kombinasi.
Contoh :
public class Main {

// Create a checkAge() method with an integer variable called age


static void checkAge(int age) {

// If age is less than 18, print "access denied"


if (age < 18) {
System.out.println("Access denied - You are not old enough!");

// If age is greater than, or equal to, 18, print "access granted"


} else {
System.out.println("Access granted - You are old enough!");
}

public static void main(String[] args) {


checkAge(20); // Call the checkAge method and pass along an age of 20
}
}

METHOD OVERLOADING
Dengan menggunakan method overloading, kita dapat membuat beberapa nama metode yang sama
tetapi menggunakan parameter yang berbeda.
Contoh :
int myMethod(int x)
float myMethod(float x)
double myMethod(double x, double y)

perhatikan contoh berikut, kita menggunakan dua metode yang memiliki nama yang sama tetapi
parameter berbeda. Kita dapat menggunakannya secara bersama-sama.
static int plusMethodInt(int x, int y) {
return x + y;
}

S1-Informatika Universitas Informatika dan Bisnis Indonesia


Pemrograman Platform Khusus I Marwondo, M.Kom.

static double plusMethodDouble(double x, double y) {


return x + y;
}

public static void main(String[] args) {


int myNum1 = plusMethodInt(8, 5);
double myNum2 = plusMethodDouble(4.3, 6.26);
System.out.println("int: " + myNum1);
System.out.println("double: " + myNum2);

Daripada menentukan dua metode yang harus melakukan hal yang sama, lebih baik untuk membebani
satu metode.

JAVA SCOPE
Pada Bahasa pemrograman Java, variable hanya dapat diakses pada ruang lingkup variable tersebut
dideklarasikan. Ini yang kemudian kita sebut dengan scope.
Variable yang dideklarasikan pada kelas akan dapat diakses oleh setiap bagian dalam kelas tersebut.
Variable yang dideklarasikan pada metode akan dapat diakses oleh setiap bagian pada metode
tersebut. Sedangkan Variable yang dideklarasikan pada blok pernyataan hanya dapat diakses oleh
bagian pada blok tersebut.

public class Main {


public static void main(String[] args) {
int x = 100;
// Code here can use x
System.out.println(x);
}
}

public class Main {


public static void main(String[] args) {

int x;

for (int i=1;i<=100;i++)


{ // This is a block
x += 2;
// Code here CAN use x
System.out.println(x);

} // The block ends here

// Code here CANNOT use i

}
}

REKURSI
Rekursi adalah teknik membuat pemanggilan fungsi itu sendiri. Teknik ini memberikan cara untuk
memecah masalah yang rumit menjadi masalah sederhana yang lebih mudah dipecahkan. Rekursi
mungkin agak sulit dipahami. Cara terbaik untuk mengetahui cara kerjanya adalah dengan
bereksperimen dengannya.
Contoh : Menjumlahkan dua angka secara bersamaan mudah dilakukan, tetapi menambahkan
serangkaian angka lebih rumit. Dalam contoh berikut, rekursi digunakan untuk

S1-Informatika Universitas Informatika dan Bisnis Indonesia


Pemrograman Platform Khusus I Marwondo, M.Kom.
menambahkan rentang angka bersama-sama dengan memecahnya menjadi tugas
sederhana untuk menambahkan dua angka.

public class Main {


public static void main(String[] args) {
int result = sum(10);
System.out.println(result);
}
public static int sum(int k) {
if (k > 0) {
return k + sum(k - 1);
} else {
return 0;
}
}
}

Ketika fungsi sum () dipanggil, ia menambahkan parameter k ke jumlah semua angka yang
lebih kecil dari k dan mengembalikan hasilnya. Ketika k menjadi 0, fungsinya hanya
mengembalikan 0. Saat dijalankan, program mengikuti langkah-langkah berikut:

10 + sum(9)
10 + ( 9 + sum(8) )
10 + ( 9 + ( 8 + sum(7) ) )
...
10 + 9 + 8 + 7 + 6 + 5 + 4 + 3 + 2 + 1 + sum(0)
10 + 9 + 8 + 7 + 6 + 5 + 4 + 3 + 2 + 1 + 0

Karena fungsi tidak memanggil dirinya sendiri saat k bernilai 0, program berhenti di sana dan
mengembalikan hasilnya.

Sama seperti loop dapat mengalami masalah perulangan tak terbatas, fungsi rekursif dapat
mengalami masalah rekursi tak terbatas. Rekursi tak terbatas adalah saat fungsi tidak pernah
berhenti memanggil dirinya sendiri. Setiap fungsi rekursif harus memiliki kondisi terhenti,
yaitu kondisi di mana fungsi berhenti memanggil dirinya sendiri. Pada contoh sebelumnya,
kondisi terhenti adalah ketika parameter k menjadi 0.

Sangat membantu untuk melihat berbagai contoh yang berbeda untuk lebih memahami
konsep tersebut. Dalam contoh ini, fungsi menambahkan rentang angka antara awal dan
akhir. Kondisi terhenti untuk fungsi rekursif ini adalah ketika akhir tidak lebih besar dari awal:

public class Main {


public static void main(String[] args) {
int result = sum(5, 10);
System.out.println(result);
}
public static int sum(int start, int end) {
if (end > start) {
return end + sum(start, end - 1);
} else {
return end;
}
}
}

Rekursi digunakan untuk menambahkan semua angka antara 5 hingga 10.

S1-Informatika Universitas Informatika dan Bisnis Indonesia


Pemrograman Platform Khusus I Marwondo, M.Kom.
Asignment :
Ubah Latihan terbilang menjadi beberapa fungsi untuk memudahkan.

S1-Informatika Universitas Informatika dan Bisnis Indonesia

Anda mungkin juga menyukai