method
DESCRIPTION
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. ([ parameter ]) { [] - PowerPoint PPT PresentationTRANSCRIPT
METHODMethod & Constructor
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
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;
}
ModifierReturn type Nama method
parameter
Return typeReturn value
Komponen
• Komponen pembentuk method :1.Nama method2.Modifier3.Return type4.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 membaca value (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 2public 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 mengubah value (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 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
PenjelasanString [] 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
CONSTRUCTORVariabel, Method & Cosntructor
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 Implementasipublic 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;
}