510 likes | 738 Views
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>]
E N D
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..hikk..hik…”; suara = tangis; System.out.println(suara); } String tertawa() { String suara = “ha..ha..ha..ha..”; return suara; }
Contoh Return type Nama method Modifier parameter public void menangis(String suara) { tangis = “hik..hikk..hik…”; suara = tangis; System.out.println(suara); } String tertawa() { String suara = “ha..ha..ha..ha..”; return suara; } Return type Return value
Komponen • Komponen pembentuk method : • Nama method • Modifier • Return type • 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 public int getCount() { int count =10; return count; } Return type Return value
Contoh public void getCount() { int count =10; } Return type 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 setName(String nama) { String name = nama; System.out.print(name); } parameter
Contoh public void setName(String nama, byte usia) { String name = nama; System.out.print(name); } parameter
(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 getName() { }
Modifier : Private • Method hanya dapat diakses oleh class itu sendiri. • Contoh : private void getName() { }
Modifier : Protected • Method dapat diakses diseluruh package tempat class dideklarasikan dan class anak yang ada diluar package. • Contoh : protected void getName() { }
No Modifier (Default) • Method hanya dapat diakses dipackage tempat class dideklarasikan. • Contoh : void getName() { }
Modifier : Static • Method yang dideklarasikan static dapat diakses tanpa harus membuat object terlebih dahulu. • Contoh : public static void getName() { }
Modifier : Abstract • Method abstract adalah method yang tidak memiliki body, hanya berupa deklarasi saja. • Contoh : abstract void getName();
Modifier : Final • Jika sebuah method ber-modifier final berarti method tersebut tidak dapat di override. • Contoh : final void getName() { }
Pengaksesan Method • Pengaksesan method dapat dilakukan dengan menggunakan tanda titik setelah nama object. • Syntax : • Argument adalah nilai yang dikirim ke method dan akan ditangkap oleh parameter. Nilai dan jumlah argument disesuaikan dengan parameter dari method yang akan diakses. nama_object.nama_method(argument);
Contoh • Pengaksesan tanpa argument : • Pengaksesan dengan 1 argument : • Pengaksesan dengan 2 argument : getNama(); getNama(“nia”); getNama(“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.getNama(nama); Variabel biasa
Pass by Reference • Mengirimkan alamat memori/referensi ke parameter method • Contoh : Student maba = new Student(); Mahasiswa.getNama(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 eGrade, double mGrade, double sGrade){ System.out.println(“Name”+name); System.out.println(“Math Grade”+mGrade); System.out.println(“English Grade”+eGrade); System.out.println(“Science Grade”+sGrade); }
Method Accessor • digunakan untuk membacavalue (variabel) dari class. • ditulis dengan menggunakan sintaks berikut: get<NameOfInstanceVariable> • dapat me-return value.
Contoh 1 public class StudentRecord { private String name; public String getName(){ return name; } } Method accessor
Contoh 2 public class StudentRecord { private String name; public double getAverage(){ double result = 0; result=(mathGrade+scienceGrade)/3; return result; } } Method accessor
Method Mutator • digunakan untuk menulis atau mengubahvalue(variabel) dari class. • Ditulis dengan menggunakan sintaks berikut: set<NameOfInstanceVariable>
contoh public class StudentRecord { private String name; public void setName( String temp ){ name = temp; } } Method mutator
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 classyangbersangkutan. 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 TestGreeting param1 param2 param3
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() { Buku() { judul = “apa aja”; pengarang = “siapa saja”; } } Nama constructor sama dengan nama class
Default Constructor • Berupa constructor kosong yang secara otomatis akan ditambahkan oleh compiler pada setiap class. • Contoh default constructor : class Buku() { Buku() { } } Statement kosong
Pengaksesan Constuctor • Pengaksesan constructor dilakukan ketika terjadi pembuatan object. Dengan cara memberikan nilai diantara tanda ( dan ). • Syntax : namaClass namaVariabel = new namaClass( 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 StudentRecord(){ //beberapa kode inisialisasi di sini } public StudentRecord(String temp){ this.name = temp; } public StudentRecord(String name, String address){ this.name = name; this.address = address; } public StudentRecord(double mGrade,double eGrade,double sGrade){ mathGrade = mGrade; englishGrade = eGrade; scienceGrade = sGrade; }