ENKAPSULASI (PENGKAPSULAN)

enkapsulasi merupakan suatu cara untuk menyembunyikan informasi detail dari suatu class. dua hal yang paling mendasar dalam enkapsulasi yaitu information hiding, interface to access data.

kegiatan 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...");
}
}  

//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();
}

}

 



















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

    public void setC(int y) {
    this.c=y;
}
    public int getC() {
return c;
}
}
class coba {
    public static void main(String[] args) {
        tingkatakses obj = new tingkatakses();
       
        obj.setC(30);
        obj.a=10;
        obj.b=20;
       
       
        System.out.println("nilai obj.a : " + obj.a);
        System.out.println("nilai obj.b : " + obj.b);
        System.out.println("nilai obj.c : " + obj.getC());
    }
}


  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

INHERITANCE (PEWARISAN)

Inheritance  merupakan  pewarisan  atribut  dan  method  pada  sebuah  class  yang diperoleh  dari  class  yang  telah  terdefinisi  tersebut.  Setiap  subclass  akan  mewarisi  state (variabel-variabel) dan  behaviour dari superclass-nya. Subclass kemudian dapat menambahkan  state  dan  behaviour  baru  yang  spesifik  dan  dapat  pula memodifikasi (override) state dan behaviour yang diturunkan oleh superclass-nya. 
Keuntungan dari inheritance adalah : 
Subclass  menyediakan  state/behaviour  yang  spesifik  yang  membedakannya  dengan superclass, hal  ini akan memungkinkan programmer Java untuk menggunakan ulang  source code  dari  superclass  yang  telah  ada.  Programmer  Java  dapat  mendefinisikan  superclass khusus yang bersifat generik,yang disebut abstract class, untuk mendefinisikan class dengan behaviour dan state secara umum.
Istilah dalam inheritance yang perlu diperhatikan :
Extends  : Keyword ini harus kita tambahkan pada definisi class yang menjadi subclass. 
Superclass :Superclass digunakan untuk menunjukkan hirarki class yang berarti class dasar dari subclass/class anak. 
Subclass  : Subclass adalah class anak atau turunan secara hirarki dari superclass. 
Super  : Keyword ini digunakan untuk memanggil konstruktor dari superclass atau menjadi variabel yang mengacu pada superclass. Ada beberapa hal yang harus diingat ketika menggunakan pemanggil constuktor super

Kegiatan praktikum   

class rumah
{
    private String a = " Rumahmewah ";
    public void info()
    {
        //System.out.println (" Dipanggil pada  =  "+this);
        System.out.println (" ");
        System.out.println (" Rumah           = "+a);
    }
}



class rumahindah extends rumah
{
    private String b        =    " tombol alarm ";
    public void info()
    {
        System.out.println (" ");
        super.info();
        System.out.println (" rumahindah     = "+b);
    }
}



public class tiperumah
{
    public static void main ( String[]args )
    {
        rumahindah C = new rumahindah();
        C.info();
    }
}


  hasil running


        
Tugas Akhir     

class lingkaran1{
    public Double r;
    public Double phi=3.14;
    public void panjangr()
    {
        System.out.println("Panjang jari-jari :"+r);
    }
}

class keliling extends lingkaran1{
    Double kel,r2,p;
    public void hitungk()
    {
        p = super.phi;
        r2=super.r;
        kel = 2*r2*p;
        System.out.println("Keliling Lingkaran : "+kel);
    }
}

class luas extends lingkaran1{
    Double Luas,r2,p;
    public void hitungl()
    {
        p= super.phi;  
        r2=super.r;
        Luas = 2*r2*r2*p;
        System.out.println("Luas Lingkaran : "+Luas);
    }
}

public class lingkaran{
    public static void main(String [] a)
    {
        keliling l1 = new keliling();
        luas l2 = new luas();
        l1.r = 7.0;
        l2.r = 7.0;
        l1.hitungk();
        l2.hitungl();
    }
}

Hasil Running

       

Tugas tambahan

class Shape{
String name, size;
public Shape(String name){
this.name = name;
}

    public void printShapeInfo(){
    System.out.println("Shape name : "+name);
    System.out.println("Shape Size : "+size);
    }

    public void printShapeName(){
    System.out.println("Shape name : "+name);
    }

    public void printShapeSize(){
    System.out.println("Shape size : "+size);
    }
}

/*langkah ke-2: Membuat Class Square turunan dari Shape*/
class square extends Shape{
    String name, size;
    int length, width;

        public square(String name){
        super(name);
        }

        public void printShapeInfo(){
        super.printShapeInfo();
        }

        public void printShapeName(){
        super.printShapeName();
        }

        public void printShapeSize(){
        super.size = String.valueOf(length*width);
        super.printShapeSize();
        }

        public void printWidth(){
        System.out.println("Lebar : "+width);
        }

        public void printLength(){
        System.out.println("Panjang : "+length);
        }
}

/*langkah ke-3: Membuat Main Program dengan Nama Class Main */
class main{
public static void main (String[] args){

square persegi = new square("persegi");
persegi.length = 10;
persegi.width = 8;
persegi.printShapeName();
persegi.printLength();
persegi.printWidth();
persegi.printShapeSize();
System.out.println("\n");

persegi.printShapeInfo();
    }
}    

Hasil running   

                                                                          

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

PRAKTIKUM PBO MOD2

TUGAS PRAKTIKUM
  Pada  gambar  1  kita  membuat  tiga object  class  dengan  nama  Student,  subclass StudentGrad dan class StudentInfo. Class Student mempunyai method Write yang digunakan untuk  melewatkan  argumen  untuk kemudian  ditampilkan  dengan  menggunakan  method Display.
JAWABAN:

student.java
class Student {
   public void Write(int ID, int Grad, String Fname, String Lname) {
       m_ID = ID;
       m_Graduation = Grad;
       m_First = Fname;
       m_Last = Lname;
    }  
    public void Display(){
      System.out.println( "Student: " + m_ID + " " + m_First + " " + m_Last + " Graduated: " + m_Graduation);
    }  
    private int m_ID, m_Graduation;  
    private String m_First;  
    private String m_Last;
}

studentgrad.java

class StudentGrad extends Student
{
   public void Write(int ID, int Grad, String Fname, String Lname, int yrGrad, String unSch, String major)
   {
       super.Write(ID, Grad, Fname, Lname);
       m_UndergradSchool = unSch;
       m_Major = major;
       m_Grad = Grad;
       YearGraduated = yrGrad;
   }
    public void Display()
    {
        super.Display();
System.out.println(" Graduated: " + m_Grad + " " + m_UndergradSchool + " " + m_Major + " " +YearGraduated);
    } 
    private Integer YearGraduated,m_Grad;
    private String m_UndergradSchool;
    private String m_Major;
}

studentinfo.java

class StudentInfo
{
     public static void main (String args[])
     {
         StudentGrad myStudent = new StudentGrad();
         myStudent.Write(10, 1,"Bob","Smith", 2000,"Columbia University","CS");
         myStudent.Display();  
     }
}

hasil running



TUGAS AKHIR
Kucing, Ayam, dan Anjing merupakan makhluk hidup yang masuk kategori hewan, tiap hewan pasti mempunyai identitas baik itu berupa tipe hewan dan  suaranya. 

anjing.java
/*disimpan nama Anjing.java*/
class Anjing extends Hewan{
   
    private String nama,jenis,bersuara;
   
   
    Anjing(String nama, String jenis, String bersuara){
//sintaks menampilkan nama
        super(nama, jenis, bersuara);
    }
    public void ShowAnjing(){
       
        System.out.println("Nama Anjing : "+nama);
        System.out.println("Jenis Anjing : "+jenis);
       
       
//sintaks menampilkan nama dan jenis hewan

    }
    public void bersuara(){
//sintaks menampilkan suara hewan
        System.out.println("Hug Hug Hug...... ");
    }

}

ayam.java
/*disimpan nama Ayam.java*/
class Ayam extends Hewan{
   
    private String nama,jenis,bersuara;
    Ayam(String nama, String jenis, String bersuara){
//sintaks menampilkan nama
    super(nama, jenis, bersuara);
    }
    public void ShowAyam(){
       
        System.out.println("Nama Ayam : "+nama);
        System.out.println("Jenis Ayam : "+jenis);
       
       
//sintaks menampilkan nama dan jenis hewan

    }
    public void bersuara(){
//sintaks menampilkan suara hewan
        System.out.println("kuk kuruyuk petok petok... ");
    }

}

kucing.java
/*disimpan nama Kucing.java*/
class Kucing extends Hewan
{
    private String nama,jenis,bersuara;
    Kucing(String nama, String jenis, String bersuara){
//sintaks menampilkan nama
        super(nama, jenis, bersuara);
    }
    public void ShowKucing(){
       
        System.out.println("Nama Kucig : "+nama);
        System.out.println("Jenis Kucing : "+jenis);
       
//sintaks menampilkan nama dan jenis hewan
    }
    public void bersuara(){
//sintaks menampilkan suara hewan
        System.out.println("Meong.. Meong... meong.... ");
    }
}

hewan.java
/*disimpan nama Hewan.java*/
class Hewan {
   
    String nama, jenis, bersuara;
     Hewan(String nama, String jenis, String bersuara){
//sintaks menampilkan nama
        this.nama=nama;
        this.jenis=jenis;
        this.bersuara=bersuara;
    }
    public String toString(){
            return "Ini adalah "+jenis+"\nNamanya "+nama+"\n"+bersuara;
    }
    public void bersuara(){       
    }
}

polimorfisme.java

/*disimpan nama Polimorfisme.java*/
import java.util.*;
class Polimorfisme{
    public static void main(String args[]){
        Hewan[] hewannya = {
          new Anjing("Broni", "Herder", "Hug Hug Hug......"),
          new Kucing("Kiti", "Persia", "Meong.. Meong... meong...."),
          new Ayam("Toki", "Buras", "kuk kuruyuk petok petok... ")
        };
        Hewan pilihHewan;
       Random pilih = new Random();
        for (int i = 0; i<5 ; i++){
            pilihHewan = hewannya[pilih.nextInt(hewannya.length)];
           System.out.println("\nPilihan Anda:\n" + pilihHewan);
       
           
        }
    }
}

hasil running




  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS