1 Pemrograman Lanjut Class, dan Instance Variable Aryo Pinandito, ST, M.MT Team Teaching Pemrograman Lanjut2 Objectives Mampu mendeklarasikan class da...
menggunakannya untuk membuat object. § Mampu mendeklarasikan method-method dalam class (perilaku class). § Mampu mendeklarasikan instance variables dalam class (atribut class). § Mampu memanggil method pada object untuk menjalankan algoritma yang ada di dalamnya. § Memahami perbedaan antara instance variables dari class dan local variables pada method.
Review Class, Object, Instance Variable § Class tersusun atas satu atau lebih method § Method menyelesaikan tugas dalam suatu
program
§ Mendeskripsikan mekanisme untuk menyelesaikan
suatu permasalahan § Menyembunyikan dari user tentang kerumitan (kompleks) permasalahan itu diselesaikan § Method harus dipanggil untuk dapat menjalankan tugasnya
Review Class, Object, Instance Variable § Class terdiri dari satu atau lebih atribut / properti § Ditunjukkan oleh suatu variabel (instance variables) § Melekat pada object sebagai instance-nya § Class yang tidak memiliki atribut dan method
disebut sebagai empty class
Deklarasi Class § Setiap deklarasi
class declaration diawali dengan
keyword public § Class harus disimpan dalam file dengan nama yang sama dengan class tersebut dan diakhiri dengan ekstensi .java § Keyword public merupakan salah satu access modifier § Deklarasi Class meliputi: § § § §
Access modifier Keyword class Nama class Sepasang kurung kurawal buka dan tutup
Declaring more than one public class in the same file is a compilation error
Nilai default sebuah objek § Sebuah objek yang belum diinstansiasi akan
memiliki nilai default null
§ Sebuah objek baru akan memiliki nilai setelah
diinstansiasi dari class-nya.
Deklarasi Method § Keyword public menandakan method dapat
diakses oleh public (diluar class tersebut)
§ Keyword void menandakan tidak ada tipe
pengembalian nilai
§ Access modifier, return type, nama method dan
parentheses (tanda kurung) merupakan komponen header dari method
Instansiasi Object dari Class § Untuk membuat sebuah objek atau sebuah
instance pada sebuah kelas digunakan operator new.
§ Sebagai contoh, membuat instance dari kelas
string :
String str2 = new String(“Hello world!”); String str2 = "Hello";
Memanggil Instance dari Method dan Passing Variabel § Untuk memanggil sebuah instance method,
gunakan format code berikut :
§ nameOfObject.nameOfMethod( parameters );
§ Contoh: public char charAt(int index) § Mengambil sebuah karakter pada indeks ke-[index];
Contoh String str1 = new String("Hello"); String str2 = new String("hello"); char x = str1.charAt(0); boolean result1 = str1.equals(str2); boolean result2 = str1.equalsIgnoreCase(str2); System.out.println(x); System.out.println(result1); System.out.println(result2);
Mengakses atribut dan method § Atribut dan/atau method dari suatu objek (hasil
instansiasi) dari class dapat diakses dengan menggunakan operator titik (.) setelah nama objek.
§ Contoh: Manusia orang= new Manusia(); // instansiasi objek orang.makan(); // pemanggilan method int umur = orang.usia; // mengakses nilai atribut
Instance variable dan local variable § Variabel yang menjadi atribut suatu class
dinamakan instance variabel
§ Instance variable ini dapat diakses dari seluruh
method yang terdapat di dalam class tersebut
§ Contoh: public class Manusia { public int usia; }
Local variable § Local variable adalah variabel yang
dideklarasikan di dalam sebuah method dalam class
§ Local variabel hanya dapat diakses dari dalam
method itu sendiri § Jika local variable dengan instance variable memiliki nama yang sama, maka instance variable dapat diakses dengan menggunakan kata kunci this.
Keyword this
public class Manusia { public int usia; public void umur() { boolean muda = false; print(this.usia); }
§ Kata kunci this dapat digunakan
sebagai referensi objek itu sendiri dari suatu objek.
public void usiaBerapa() { this.umur(); }
§ Sehingga, kata kunci this
digunakan untuk mengakses
}
method dan/atau variabel yang ada di dalam objek itu sendiri.
Manusia orang = new Manusia(); orang.usiaBerapa(); // menampilkan usia