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