Selasa, 14 Agustus 2012

Demo Protected


class A {
  private int a;        // hanya dikenali oleh kelas A
   
  // hanya dapat dikenali oleh kelas A dan turunan-turunannya
  protected void setA(int nilai) {
    a = nilai;
  }
   
  // hanya dapat dikenali oleh kelas A dan turunan-turunannya
  protected int getA() {
    return a;
  }
}

class B extends A {
  private int b;
   
  // constructor kelas B
  B(int nilaiA, int nilaiB) {       
    //a = nilaiA;  // SALAH, karena a tidak dikenali di sini
    setA(nilaiA);  // menggunakan method setA()
    b = nilaiB;
  }
   
  public void showData() {
    // menggunakan method getA()
    System.out.println("Nilai a : " + getA());
    System.out.println("Nilai b : " + b);
  }
}

class C {
  private int c;
   
  public void setC(int nilai) {
    //setA(10);     // SALAH, setA() tidak dikenal di sini
    c = nilai;
  }
   
  public int getC() {
    return c;
  }
   
  public void showC() {
    //System.out.println("Nilai a : " + getA());    // SALAH
    System.out.println("Nilai c : " + c);
  }   
}

class DemoProtected1 {       
  public static void main(String[] args) {       
   
    // melakukan instansiasi terhadap kelas B
    B obj = new B(40, 50);
   
    obj.showData();
   
    obj.setA(100);
    System.out.println("Nilai a : " + obj.getA());
  }       
}

Tidak ada komentar:

Posting Komentar