Kamis, 16 Juni 2011

MODUL 6
BAB III
TUGAS PENDAHULUAN

Pertanyaan :
1.      Bagaimana agar class dalam suatu package dapat digunakan?
2.      Mana yang lebih dahulu ditulis, kata kunci package atau import?
3.      Tanda separator apa yang digunakan untuk memisahkan antara nama package dengan nama class?
Jawaban :
1.      Package adalah cara mengelola class-class yang kita buat. Package mengelompokkan class-class sesuai dengan kategori tertentu. Class-class dalam suatu package harus disimpan pada directory yang sama dengan nama packagenya. Suatu class dapat mengimport class yang lain. Pada saat mengimport class dalam suatu package, pastikan letak package tersebut satu directory dengan class yang mengimportnya.
2.      Deklarasi package harus diletakkan pada bagian paling awal (sebelum deklarasi import) dari source code setiap kelas yang dibungkus package tersebut.
3.      Bentuk umum deklarasi package :
package namaPackage;
Deklarasi tersebut akan memberitahukan kompilator, ke library manakah suatu kelas dikompilasi dan dirujuk.
Syarat nama package :
·         Diawali huruf kecil
·         Menggambarkan kelas-kelas yang dibungkusnya
·         Harus unik (berbeda dengan nama package standard)
·         Merepresentasikan path dari package tersebut.
·         Harus sama dengan nama direktorinya.
MODUL 5
BAB III
TUGAS PENDAHULUAN

1.      Apa yang dimaksud dengan abstract method?
Jawab:
Merupakan suatu method yang dideklarasikan dengan keyword abstract serta tanpa implementasi. Suatu abstract method didefinisikan dengan cukup mendeklarasikan namanya pada class abstract dan meng-override pada masing-masing kelas turunannya dengan menyesuaikan dengan kebutuhan kelas turunannya tersebut.

2.      Apa yang dimaksud dengan overriding method?
Jawab:
Overriding adalah pendefinisian ulang method yang sama pada subclass (atau jika ada method di class parent yang sudah didefinisikan dan didefinisikan ulang, maka method pada class anak akan menutup method parent).
Overriding mempunyai cirri-ciri sebagai berikut:
a.    Nama method harus sama
b.   Daftar parameter harus sama
c.    Return type harus sama

3.      Apa yang dimaksud dengan instansiasi?
Jawab:
Instance atau objek dapat dibentuk dengan memasangkan variabel bertipe class atau interface dengan referensi berupa pemanggilan constructor class. Casting dapat dilakukan untuk mengubah objek dari tipe superclass menjadi tipe subclass.




MODUL 4
TUGAS PENDAHULUAN
1. Apa yang anda ketahui tentang Information hiding ?
            Information Hiding adalah menyembunyikan attribute suatu objek dari objek lain.
2.Jelaskan tentang Interface to access data dalam konsep Pengkapsulan?
membuat suatu interface berupa method untuk merubah nilai atribut yang sebelumnya sudah dilakukan proses information hiding
3.Jelaskan mengenai keyword public, protected dan private ?
  • Atribut Public : Izin akses public sebuah kelas, jika sebuah atribut diperbolehkan diakses secara langsung oleh kelas lain. Sebuah atribut yang dinyatakan sebagai public dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya
  • Atribut Protected :Izin aksespro tec ted sebuah atribut biasanya digunakan oleh sebuah kelas, jika sebuah atribut diperbolehkan diakses secara langsung oleh kelas lain yang merupakan kelas turunannya (inheri tance). Sebuah atribut yang dinyatakan sebagaipro tec ted tidak dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya, kecuali kelas yang mengaksesnya adalah kelas turunan dari kelas yang membungkusnya
  • Atribut Private :Izin akses private pada sebuah atribut biasanya digunakan oleh sebuah kelas untuk melindungi atribut-atributnya agar tidak dapat diakses oleh kelas lain. Sebuah atribut yang dinyatakan sebagai private hanya dapat diakses secara langsung oleh kelas yang membungkusnya, sedangakan kelas lainnya tidak dapat mengakses atribut ini secara langsung
2.Ubah hak akses makan dari public menjadi protected dan ulangi praktikum nomor 1! Apayang terjadi? Jelaskan!

Jawab
Program tetap jalan dan hak akses protected bisa di akses oleh class andi. Karena Anggota dapat diakses dari anggota class yang sama atau class friend , dan juga dari anggota class turunannya(derived). 

hasil runing :
3.Tambahkan pada kelas andi untuk memanggil metodh bunuh diri, ulangi praktikum no 1. Apa yang terjadi? Jelaskan!

Jawab
Program eror ketika dijalankan karena pada method bunuhdiri menggunkan hak akses private sehingga tidak dapat di akses oleh class andi, private hanya bisa di akses oleh anggota yang sama dalam satu clas saja.
hasil runing :

IMPLEMENTASI PRAKTIKUM

/*
Disimpan dalam file “manusia.java”
*/
class manusia
{
public String nama;
public manusia(String n)
{
this.nama = n;
}
public String tampilkanNama()
{
return nama;
}
public void makan()
{
System.out.println("Nyam... nyam... nyam...");
}
public void kerja()
{
System.out.println("Kerja... kerjaaa...");
}
private void bunuhDiri()
{
System.out.println("Dor…bruk...");
}
}
Andi adalah objek bentukan dari kelas manusia
(9)
/*
Disimpan dalam file “andi.java”
*/
class andi
{
public static void main(String arg[])
{
manusia andi= new manusia("Andi");
System.out.println("Nama= "+ andi.tampilkanNama());
andi.makan();
}
}
1. Apa yang terjadai jika hak aksesprivate di akses oleh klas lain?
       Jawab: 
Program akan eror dan hak akses private tidak dapat di kases oleh class lain karena hak akses private hanya dpat di akses oleh dan hanya pada satu clas itu sendiri.
hasil runing :

  Kompile dan jalankan kelas manusia dan andi!



Tugas Tambahan

Dalam sebuah object yang mengandung variable-variabel dan method-metod, dapat ditentukan hak akses pada sebuah variabel atau method dari object. Pembungkusan variabel dan method dalam sebuah object dalam bagian yang terlindungi inilah yang disebut dengan enkapsulasi. Jika diperhatikan gambar dibawah ini yang merupakan model object mahasiswa, tampak bahwa bagian pada lingkaran di dalam tidak boleh diakses langsung dari luar (didefinisikan private), bagian tersebut misalnya nama, bisa diakses dengan memanfaatkan bagian-bagian pada lingkaran luar yang bersifat public (boleh diakses langsung dari luar object), yakni getNama().
Gambar : Pemodelan object mahasiswa dengan variabel dan methodnya


IV.Tugas Akhir


class tingkatakses {
int a;
public int b;
private int c;

public void setC (int obj) {
this.c = obj;
}

public int getC () {
return c;
}
}

class coba {

public static void main (String[] args) {
tingkatakses obj = new tingkatakses ();
obj.a = 10;
obj.b = 20;
obj.setC(30);

System.out.println("Tugas Akhir Modul 4 :");
System.out.println();
System.out.println("Nilai obj.a :"+obj.a);
System.out.println("Nilai obj.b :"+obj.b);
System.out.println("Nilai obj.c :"+obj.getC());
System.out.println();
}
}

hasil runing :