Method Constructor METHOD Method Dalam bahasa pemrograman lain
Method & Constructor METHOD
Method • Dalam bahasa pemrograman lain dikenal dengan nama prosedur/fungsi. • Representasi dari behaviour atau tingkah laku yang dimiliki oleh real world object.
Syntax Deklarasi Method <modifier> <return_type> <nama_metode> ([parameter]) { [<statement>] }
Contoh public void menangis(String suara) { tangis = “hik. . hik…”; suara = tangis; System. out. println(suara); } String tertawa() { String suara = “ha. . ”; return suara; }
Contoh Modifier Return type Nama method parameter public void menangis(String suara) { tangis = “hik. . hik…”; suara = tangis; System. out. println(suara); } String tertawa() { String suara = “ha. . ”; return suara; } Return type Return value
Komponen • Komponen pembentuk method : 1. Nama method 2. Modifier 3. Return type 4. Parameter
(1) Nama Method • Aturan penamaan method sama seperti aturan penamaan variabel. • Tidak dapat menggunakan kata yang termasuk keyword java. • Biasanya diawali dengan huruf kecil.
Letak Nama Method Pada method <modifier> <return_type> <nama_metode> ([parameter]) { [<statement>] }
(2) Return Type • Return type berhubungan dengan nilai yang akan dikembalikan oleh method (return value) ketika proses invoking/pemanggilan. • Return type bisa berupa tipe data primitif maupun tipe reference. • Method yang tidak memiliki return value memiliki return type void. • Method yang memiliki return value memiliki statement return didalam blok-nya.
Letak Return Type Pada method <modifier> <return_type> <nama_metode>([parameter]) { [<statement>] }
Contoh Return type public int get. Count() { int count =10; return count; } Return value
Contoh Return type public void get. Count() { int count =10; } Tanpa return value
(3) Parameter • Parameter adalah variabel yang akan menangkap argument yang dikirim ketika proses invoking method. • Aturan penulisan parameter sama seperti deklarasi variabel. • Ditulis diantara tanda ( dan) pada method signature. • Parameter bersifat optional. Method bisa memiliki parameter kosong. • Untuk method yang memiliki lebih dari satu parameter penulisannya dipisahkan dengan tanda koma (, )
Letak Parameter Pada method <modifier> <return_type> <nama_metode> ([parameter]) { [<statement>] }
Contoh public void set. Name(String nama) { String name = nama; System. out. print(name); } parameter
Contoh public void set. Name(String nama, byte usia) { parameter String name = nama; System. out. print(name); }
(4) Method Modifier • • Public private Protected No Modifier (default) Final Static Abstract Access Modifier
Letak Modifier Pada method <modifier> <return_type> <nama_metode>([parameter]) { [<statement>] }
Modifier : Public • Method dapat diakses di seluruh package. Baik didalam package tempat class dideklarasikan maupun diluar package. • Contoh : public void get. Name() { }
Modifier : Private • Method hanya dapat diakses oleh class itu sendiri. • Contoh : private void get. Name() { }
Modifier : Protected • Method dapat diakses diseluruh package tempat class dideklarasikan dan class anak yang ada diluar package. • Contoh : protected void get. Name() { }
No Modifier (Default) • Method hanya dapat diakses dipackage tempat class dideklarasikan. • Contoh : void get. Name() { }
Modifier : Static • Method yang dideklarasikan static dapat diakses tanpa harus membuat object terlebih dahulu. • Contoh : public static void get. Name() { }
Modifier : Abstract • Method abstract adalah method yang tidak memiliki body, hanya berupa deklarasi saja. • Contoh : abstract void get. Name();
Modifier : Final • Jika sebuah method ber-modifier final berarti method tersebut tidak dapat di override. • Contoh : final void get. Name() { }
Pengaksesan Method • Pengaksesan method dapat dilakukan dengan menggunakan tanda titik setelah nama object. • Syntax : nama_object. nama_method(argument); • Argument adalah nilai yang dikirim ke method dan akan ditangkap oleh parameter. Nilai dan jumlah argument disesuaikan dengan parameter dari method yang akan diakses.
Contoh • Pengaksesan tanpa argument : get. Nama(); • Pengaksesan dengan 1 argument : get. Nama(“nia”); • Pengaksesan dengan 2 argument : get. Nama(“nia”, “ramadhani”);
Tipe Argument • Nilai yang dikirim melalui argument dapat berupa variabel reference maupun variabel biasa. • Jika yang dikirim ke method adalah value atau variabel biasa Pass by value • Jika yang dikirim ke method adalah alamat memori atau variabel reference Pass by reference
Pass by Value • Mengirimkan value/nilai ke parameter method • Contoh : String nama = “Shanti”; Mahasiswa. get. Nama(nama); Variabel biasa
Pass by Reference • Mengirimkan alamat memori/referensi ke parameter method • Contoh : Student maba = new Student(); Mahasiswa. get. Nama(maba); Variabel reference
Polymorphism • Polymorfisme : yang memiliki banyak bentuk. • Contoh penerapan dari konsep polymorfisme adalah method overload.
Method Overload • Sebuah class dapat memiliki beberapa method dengan nama yang sama. • Pembeda antara method-method tersebut adalah parameter.
contoh public void print (String temp){ System. out. println(“Name: ”+name); System. out. println(“Address: ”+address); System. out. println(“Age”+age); } public void print(double e. Grade, double m. Grade, double s. Grade){ System. out. println(“Name”+name); System. out. println(“Math Grade”+m. Grade); System. out. println(“English Grade”+e. Grade); System. out. println(“Science Grade”+s. Grade); }
Method Accessor digunakan untuk membaca value (variabel) dari class. ditulis dengan menggunakan sintaks berikut: get<Name. Of. Instance. Variable> dapat me-return value.
Contoh 1 public class Student. Record { private String name; public String get. Name(){ return name; } } Method accessor
Contoh 2 public class Student. Record { private String name; Method accessor public double get. Average(){ double result = 0; result=(math. Grade+science. Grade)/3; return result; } }
Method Mutator – digunakan untuk menulis atau mengubah value (variabel) dari class. – Ditulis dengan menggunakan sintaks berikut: set<Name. Of. Instance. Variable>
contoh public class Student. Record { private String name; Method mutator public void set. Name( String temp ){ name = temp; } }
Main Method • Merupakan awal dari eksekusi program. public static void main(String[] args) { [statement] }
Penjelasan � public : merupakan modifier dari method main(), yang berarti bahwa method dapat diakses dimanapun � static : keyword ini berfungsi untuk memberi tahu kompiler bahwa method main bisa langsung digunakan dalam context class yang bersangkutan. Untuk mengeksekusi/menjalankan method yang bertipe static, tidak diperlukan instance nya. � void : menunjukkan bahwa method main() tidak mengembalikan nilai � main : merupakan nama method utama dari program java �
Penjelasan String [] args : Menyatakan bahwa method main() menerima single parameter yaitu args yang bertipe array. Digunakan pada saat memasukkan parameter pada saat menjalankan program. Contoh: java Test. Greeting param 1 param 2 param 3
Variabel, Method & Cosntructor CONSTRUCTOR
Constructor • Digunakan untuk memberikan inisialisasi pada object. • Syntax constructor sama seperti method namun tidak memiliki return value. • Nama constructor harus sama dengan nama class.
Syntax constructor <modifier> <nama_class> ([parameter]) { [<statement>] }
Contoh class Buku() { Nama constructor sama dengan nama class judul = “apa aja”; pengarang = “siapa saja”; } }
Default Constructor • Berupa constructor kosong yang secara otomatis akan ditambahkan oleh compiler pada setiap class. • Contoh default constructor : class Buku() { } } Statement kosong
Pengaksesan Constuctor • Pengaksesan constructor dilakukan ketika terjadi pembuatan object. Dengan cara memberikan nilai diantara tanda ( dan ). • Syntax : nama. Class nama. Variabel = new nama. Class( nilai constructor);
Contoh • Pengaksesan constructor tanpa parameter : Mahasiswa maba = new Mahasiswa(); • Pengaksesan constructor dengan 1 parameter : Mahasiswa maba = new Mahasiswa(“Santi”); • Pengaksesan constructor dengan 2 parameter : Mahasiswa maba = new Mahasiswa(“ 1234”, ”Santi”);
Overload Constructor • Sebuah class dapat memiliki lebih dari satu constructor. • Pembeda constructor overloading tersebut adalah parameter.
Contoh Implementasi public Student. Record(){ //beberapa kode inisialisasi di sini } public Student. Record(String temp){ this. name = temp; } public Student. Record(String name, String address){ this. name = name; this. address = address; } public Student. Record(double m. Grade, double e. Grade, double s. Grade){ math. Grade = m. Grade; english. Grade = e. Grade; science. Grade = s. Grade; }
- Slides: 50