SlideShare a Scribd company logo
1 of 69
Variabel, Method & Constructor
Oleh : Nur Hayatin, S.ST
Teknik Informatika – UMM
2011
Topik
• Deklarasi Variabel
• Komponen Variabel
• Variabel Modifier
• Casting
• Deklarasi Method
• Komponen Method
• Return Type
• Parameter
• Method Modifier
• Method Overloading
• Constructor
VARIABEL
Variabel, Method & Constructor
Syntax Deklarasi Variabel
<modifier> <tipe> <nama_variabel>;
Komponen
• Komponen pembentuk variabel:
1. Modifier
2. Tipe data
3. Nama variabel
Penjelasan
1. Tipe data
Dapat menggunakan tipe data primitif
maupun tipe data reference.
2. Nama variabel
Penjelasan ada di pembahasan “Struktur
Dasar Java (minggu 3)”.
3. Modifier
Penjelasan  next slide
Variabel Modifier
• Public
• Private
• Protected
• No modifier (default)
• Static
• Final
Access Modifier
Modifier : Public
• Variabel dapat diakses diseluruh package. Baik
didalam package tempat class dideklarasikan
maupun package yang lain.
• Contoh :
public int count;
Modifier : Private
• Variabel hanya dapat diakses oleh class itu
sendiri.
• Contoh :
private int count;
Modifier : Protected
• Variabel dapat diakses diseluruh package
tempat class dideklarasikan atau class anak
yang ada di package yang lain.
• Contoh :
protected int count;
No Modifier (Default)
• Variabel dapat diakses diseluruh package
tempat class dideklarasikan.
• Contoh :
int count;
Modifier : Static
• Variabel yang dideklarasikan static dapat
diakses dengan menggunakan nama class.
• Compiler mengalokasi satu memori untuk
variabel static tidak perduli berapa banyak
object yang dibuat.
• Contoh :
static int count;
public static int count2;
Modifier : Final
• Jika sebuah variabel dideklarasikan dengan
menggunakan modifier final, maka nilai pada
variabel tersebut bersifat konstan (tidak dapat
diubah lagi).
• Untuk itu ketika variabel bertipe final
dideklarasikan sebaiknya sekaligus diberikan
inisialisasi.
• Contoh :
final int count;
Tabel Access Modifier
(Pada Variabel)
Lokasi Akses Public Default Private Protected
Class yang sama Ya Ya Ya Ya
Package yang sama Ya Ya No Ya
Subclass pd package yang sama Ya Ya No Ya
Diluar package Ya No No No
Subclass diluar package Ya No No Ya
Pengaksesan Variabel
• Pengaksesan variabel dapat dilakukan dengan
menggunakan tanda titik setelah nama object.
• Syntax :
• Contoh :
Mahasiswa.nama;
nama_object.nama_field;
Casting
• Merubah tipe data dari suatu nilai secara
eksplisit.
• Digunakan ketika variabel yang menyimpan
suatu nilai memiliki tipe data yang berbeda
dari data aslinya.
• Syarat : tipe data yang baru harus memiliki
ukuran lebih besar dari tipe data lama.
• Cara: tambahkan tipe data yang diinginkan
dalam tanda kurung sebelum nilai.
Contoh
int i = 5;
double d = (double)i;
Tipe Casting
• Untuk tipe data boolean tidak dapat dilakukan
casting.
METHOD
Variabel, Method & 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;
}
Modifier
Return type Nama method
parameter
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
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
Fitur OOP
• Encapsulation
• Polymorphism
• Inheritance
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 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 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
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
CONSTRUCTOR
Variabel, 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 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;
}

More Related Content

Similar to VAR-MET-KON

Jeni Intro1 Bab10 Membuat Class Sendiri
Jeni Intro1 Bab10 Membuat Class SendiriJeni Intro1 Bab10 Membuat Class Sendiri
Jeni Intro1 Bab10 Membuat Class SendiriIndividual Consultants
 
Jeni intro1-bab10-membuat class sendiri
Jeni intro1-bab10-membuat class sendiriJeni intro1-bab10-membuat class sendiri
Jeni intro1-bab10-membuat class sendiriKristanto Wijaya
 
Jeni Intro1 Bab10 Membuat Class Sendiri
Jeni Intro1 Bab10 Membuat Class SendiriJeni Intro1 Bab10 Membuat Class Sendiri
Jeni Intro1 Bab10 Membuat Class SendiriIndividual Consultants
 
Laporan8
Laporan8Laporan8
Laporan8Sa Lam
 
Konsep (class & object)
Konsep (class & object)Konsep (class & object)
Konsep (class & object)Rizki Ramdani
 
Pemrograman 2 Part 3.pdf
Pemrograman 2 Part 3.pdfPemrograman 2 Part 3.pdf
Pemrograman 2 Part 3.pdfJeffryAndrian
 
Network programming 03- Pemrograman Java Lanjutan
Network programming 03- Pemrograman Java LanjutanNetwork programming 03- Pemrograman Java Lanjutan
Network programming 03- Pemrograman Java LanjutanLia Rusdyana Dewi
 
Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)Rakhmat Dedi Gunawan
 
Laporan PBO pratikum 2
Laporan PBO pratikum 2Laporan PBO pratikum 2
Laporan PBO pratikum 2rahmi wahyuni
 
Modul pratikum pbo - Polimorphism
Modul pratikum pbo - PolimorphismModul pratikum pbo - Polimorphism
Modul pratikum pbo - Polimorphismrahmantoyuri
 
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)Melina Krisnawati
 
Kls atribut dan objek.pdf
Kls atribut dan objek.pdfKls atribut dan objek.pdf
Kls atribut dan objek.pdfAkaiAkal
 
03.40 JAVA SE_get and set method
03.40 JAVA SE_get and set method03.40 JAVA SE_get and set method
03.40 JAVA SE_get and set methodJefri Fahrian
 
Pbo inheritance, polymorphism, dan inte
Pbo inheritance, polymorphism, dan intePbo inheritance, polymorphism, dan inte
Pbo inheritance, polymorphism, dan inteSmkn-2 Pekanbaru
 
Materi Tipe Data dan Variabel
Materi Tipe Data dan VariabelMateri Tipe Data dan Variabel
Materi Tipe Data dan Variabelwawanext01
 
[PBO] Pertemuan 10 - Generic Programming & Collection
[PBO] Pertemuan 10 - Generic Programming & Collection[PBO] Pertemuan 10 - Generic Programming & Collection
[PBO] Pertemuan 10 - Generic Programming & Collectionrizki adam kurniawan
 

Similar to VAR-MET-KON (20)

Jeni Intro1 Bab10 Membuat Class Sendiri
Jeni Intro1 Bab10 Membuat Class SendiriJeni Intro1 Bab10 Membuat Class Sendiri
Jeni Intro1 Bab10 Membuat Class Sendiri
 
Jeni intro1-bab10-membuat class sendiri
Jeni intro1-bab10-membuat class sendiriJeni intro1-bab10-membuat class sendiri
Jeni intro1-bab10-membuat class sendiri
 
Jeni Intro1 Bab10 Membuat Class Sendiri
Jeni Intro1 Bab10 Membuat Class SendiriJeni Intro1 Bab10 Membuat Class Sendiri
Jeni Intro1 Bab10 Membuat Class Sendiri
 
Laporan8
Laporan8Laporan8
Laporan8
 
Modul 3 pbo(1)
Modul 3 pbo(1)Modul 3 pbo(1)
Modul 3 pbo(1)
 
Konsep (class & object)
Konsep (class & object)Konsep (class & object)
Konsep (class & object)
 
P5 depandi enda
P5 depandi endaP5 depandi enda
P5 depandi enda
 
Pemrograman 2 Part 3.pdf
Pemrograman 2 Part 3.pdfPemrograman 2 Part 3.pdf
Pemrograman 2 Part 3.pdf
 
Network programming 03- Pemrograman Java Lanjutan
Network programming 03- Pemrograman Java LanjutanNetwork programming 03- Pemrograman Java Lanjutan
Network programming 03- Pemrograman Java Lanjutan
 
Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)
 
Laporan PBO pratikum 2
Laporan PBO pratikum 2Laporan PBO pratikum 2
Laporan PBO pratikum 2
 
Modul pratikum pbo - Polimorphism
Modul pratikum pbo - PolimorphismModul pratikum pbo - Polimorphism
Modul pratikum pbo - Polimorphism
 
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
 
Kls atribut dan objek.pdf
Kls atribut dan objek.pdfKls atribut dan objek.pdf
Kls atribut dan objek.pdf
 
03.40 JAVA SE_get and set method
03.40 JAVA SE_get and set method03.40 JAVA SE_get and set method
03.40 JAVA SE_get and set method
 
Pbo inheritance, polymorphism, dan inte
Pbo inheritance, polymorphism, dan intePbo inheritance, polymorphism, dan inte
Pbo inheritance, polymorphism, dan inte
 
17419 6 override
17419 6 override17419 6 override
17419 6 override
 
Materi Tipe Data dan Variabel
Materi Tipe Data dan VariabelMateri Tipe Data dan Variabel
Materi Tipe Data dan Variabel
 
[PBO] Pertemuan 10 - Generic Programming & Collection
[PBO] Pertemuan 10 - Generic Programming & Collection[PBO] Pertemuan 10 - Generic Programming & Collection
[PBO] Pertemuan 10 - Generic Programming & Collection
 
Modul 5 pbo
Modul 5 pboModul 5 pbo
Modul 5 pbo
 

VAR-MET-KON

  • 1. Variabel, Method & Constructor Oleh : Nur Hayatin, S.ST Teknik Informatika – UMM 2011
  • 2. Topik • Deklarasi Variabel • Komponen Variabel • Variabel Modifier • Casting • Deklarasi Method • Komponen Method • Return Type • Parameter • Method Modifier • Method Overloading • Constructor
  • 4. Syntax Deklarasi Variabel <modifier> <tipe> <nama_variabel>;
  • 5. Komponen • Komponen pembentuk variabel: 1. Modifier 2. Tipe data 3. Nama variabel
  • 6. Penjelasan 1. Tipe data Dapat menggunakan tipe data primitif maupun tipe data reference. 2. Nama variabel Penjelasan ada di pembahasan “Struktur Dasar Java (minggu 3)”. 3. Modifier Penjelasan  next slide
  • 7. Variabel Modifier • Public • Private • Protected • No modifier (default) • Static • Final Access Modifier
  • 8. Modifier : Public • Variabel dapat diakses diseluruh package. Baik didalam package tempat class dideklarasikan maupun package yang lain. • Contoh : public int count;
  • 9. Modifier : Private • Variabel hanya dapat diakses oleh class itu sendiri. • Contoh : private int count;
  • 10. Modifier : Protected • Variabel dapat diakses diseluruh package tempat class dideklarasikan atau class anak yang ada di package yang lain. • Contoh : protected int count;
  • 11. No Modifier (Default) • Variabel dapat diakses diseluruh package tempat class dideklarasikan. • Contoh : int count;
  • 12. Modifier : Static • Variabel yang dideklarasikan static dapat diakses dengan menggunakan nama class. • Compiler mengalokasi satu memori untuk variabel static tidak perduli berapa banyak object yang dibuat. • Contoh : static int count; public static int count2;
  • 13. Modifier : Final • Jika sebuah variabel dideklarasikan dengan menggunakan modifier final, maka nilai pada variabel tersebut bersifat konstan (tidak dapat diubah lagi). • Untuk itu ketika variabel bertipe final dideklarasikan sebaiknya sekaligus diberikan inisialisasi. • Contoh : final int count;
  • 14. Tabel Access Modifier (Pada Variabel) Lokasi Akses Public Default Private Protected Class yang sama Ya Ya Ya Ya Package yang sama Ya Ya No Ya Subclass pd package yang sama Ya Ya No Ya Diluar package Ya No No No Subclass diluar package Ya No No Ya
  • 15. Pengaksesan Variabel • Pengaksesan variabel dapat dilakukan dengan menggunakan tanda titik setelah nama object. • Syntax : • Contoh : Mahasiswa.nama; nama_object.nama_field;
  • 16. Casting • Merubah tipe data dari suatu nilai secara eksplisit. • Digunakan ketika variabel yang menyimpan suatu nilai memiliki tipe data yang berbeda dari data aslinya. • Syarat : tipe data yang baru harus memiliki ukuran lebih besar dari tipe data lama. • Cara: tambahkan tipe data yang diinginkan dalam tanda kurung sebelum nilai.
  • 17. Contoh int i = 5; double d = (double)i;
  • 18. Tipe Casting • Untuk tipe data boolean tidak dapat dilakukan casting.
  • 20. Method • Dalam bahasa pemrograman lain dikenal dengan nama prosedur/fungsi. • Representasi dari behaviour atau tingkah laku yang dimiliki oleh real world object.
  • 21. Syntax Deklarasi Method <modifier> <return_type> <nama_metode> ([parameter]) { [<statement>] }
  • 22. 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; }
  • 23. 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; } Modifier Return type Nama method parameter Return type Return value
  • 24. Komponen • Komponen pembentuk method : 1. Nama method 2. Modifier 3. Return type 4. Parameter
  • 25. (1) Nama Method • Aturan penamaan method sama seperti aturan penamaan variabel. • Tidak dapat menggunakan kata yang termasuk keyword java. • Biasanya diawali dengan huruf kecil.
  • 26. Letak Nama Method Pada method <modifier> <return_type> <nama_metode> ([parameter]) { [<statement>] }
  • 27. (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.
  • 28. Letak Return Type Pada method <modifier> <return_type> <nama_metode>([parameter]) { [<statement>] }
  • 29. Contoh public int getCount() { int count =10; return count; } Return type Return value
  • 30. Contoh public void getCount() { int count =10; } Return type Tanpa return value
  • 31. (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 (,)
  • 32. Letak Parameter Pada method <modifier> <return_type> <nama_metode> ([parameter]) { [<statement>] }
  • 33. Contoh public void setName(String nama) { String name = nama; System.out.print(name); } parameter
  • 34. Contoh public void setName(String nama, byte usia) { String name = nama; System.out.print(name); } parameter
  • 35. (4) Method Modifier • Public • private • Protected • No Modifier (default) • Final • Static • Abstract Access Modifier
  • 36. Letak Modifier Pada method <modifier> <return_type> <nama_metode>([parameter]) { [<statement>] }
  • 37. Modifier : Public • Method dapat diakses di seluruh package. Baik didalam package tempat class dideklarasikan maupun diluar package. • Contoh : public void getName() { }
  • 38. Modifier : Private • Method hanya dapat diakses oleh class itu sendiri. • Contoh : private void getName() { }
  • 39. Modifier : Protected • Method dapat diakses diseluruh package tempat class dideklarasikan dan class anak yang ada diluar package. • Contoh : protected void getName() { }
  • 40. No Modifier (Default) • Method hanya dapat diakses dipackage tempat class dideklarasikan. • Contoh : void getName() { }
  • 41. Modifier : Static • Method yang dideklarasikan static dapat diakses tanpa harus membuat object terlebih dahulu. • Contoh : public static void getName() { }
  • 42. Modifier : Abstract • Method abstract adalah method yang tidak memiliki body, hanya berupa deklarasi saja. • Contoh : abstract void getName();
  • 43. Modifier : Final • Jika sebuah method ber-modifier final berarti method tersebut tidak dapat di override. • Contoh : final void getName() { }
  • 44. 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);
  • 45. Contoh • Pengaksesan tanpa argument : • Pengaksesan dengan 1 argument : • Pengaksesan dengan 2 argument : getNama(); getNama(“nia”); getNama(“nia”, “ramadhani”);
  • 46. 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
  • 47. Pass by Value • Mengirimkan value/nilai ke parameter method • Contoh : String nama = “Shanti”; Mahasiswa.getNama(nama); Variabel biasa
  • 48. Pass by Reference • Mengirimkan alamat memori/referensi ke parameter method • Contoh : Student maba = new Student(); Mahasiswa.getNama(maba); Variabel reference
  • 49. Fitur OOP • Encapsulation • Polymorphism • Inheritance
  • 50. Polymorphism • Polymorfisme : yang memiliki banyak bentuk. • Contoh penerapan dari konsep polymorfisme adalah method overload.
  • 51. Method Overload • Sebuah class dapat memiliki beberapa method dengan nama yang sama. • Pembeda antara method-method tersebut adalah parameter.
  • 52. 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); }
  • 53. Method Accessor  digunakan untuk membaca value (variabel) dari class.  ditulis dengan menggunakan sintaks berikut: get<NameOfInstanceVariable>  dapat me-return value.
  • 54. Contoh 1 public class StudentRecord { private String name; public String getName(){ return name; } } Method accessor
  • 55. Contoh 2 public class StudentRecord { private String name; public double getAverage(){ double result = 0; result=(mathGrade+scienceGrade)/3; return result; } } Method accessor
  • 56. Method Mutator – digunakan untuk menulis atau mengubah value (variabel) dari class. – Ditulis dengan menggunakan sintaks berikut: set<NameOfInstanceVariable>
  • 57. contoh public class StudentRecord { private String name; public void setName( String temp ){ name = temp; } } Method mutator
  • 58. Main Method • Merupakan awal dari eksekusi program. public static void main(String[] args) { [statement] }
  • 59. 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
  • 60. 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
  • 62. Constructor • Digunakan untuk memberikan inisialisasi pada object. • Syntax constructor sama seperti method namun tidak memiliki return value. • Nama constructor harus sama dengan nama class.
  • 63. Syntax constructor <modifier> <nama_class> ([parameter]) { [<statement>] }
  • 64. Contoh class Buku() { Buku() { judul = “apa aja”; pengarang = “siapa saja”; } } Nama constructor sama dengan nama class
  • 65. Default Constructor • Berupa constructor kosong yang secara otomatis akan ditambahkan oleh compiler pada setiap class. • Contoh default constructor : class Buku() { Buku() { } } Statement kosong
  • 66. Pengaksesan Constuctor • Pengaksesan constructor dilakukan ketika terjadi pembuatan object. Dengan cara memberikan nilai diantara tanda ( dan ). • Syntax : namaClass namaVariabel = new namaClass( nilai constructor);
  • 67. 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”);
  • 68. Overload Constructor • Sebuah class dapat memiliki lebih dari satu constructor. • Pembeda constructor overloading tersebut adalah parameter.
  • 69. 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; }