Minggu, 11 November 2012

Public,Protected,Private dan Encapsulation pada java


Public,Protected,Private dan Encapsulation pada java
Sebelum membahas tentang materi tersebut pada java, kita ketahui dulu apa itu java bagaimana cara membuat sebuah program pada java. Berikut ini penjelasannya.
A. Pengertian Java
            Java adalah bahasa pemrograman berorientasi objek yang dikembangkan oleh Sun Microsystems sejak tahun 1991 yang di motori oleh James Gosling. Bahasa ini dikembangkan dengan model yang mirip dengan bahasa C++ dan Smalltalk, namun dirancang agar lebih mudah dipakai dan ­platform independent, yaitu dapat dijalankan di berbagai jenis sistem operasi dan arsitektur komputer­­. Bahasa ini juga dirancang untuk pemrograman di Internet sehingga dirancang agar aman dan portabel.
Syntak pada java seperti syntax pada c++ , tetapi syntax java tidak memerlukan header file, pointer aritchmatic (atau bahkan pointer syntax),struktur union,operator overloading,class virtual base,dan yang lainnnya.
Java merupakan program berorientasi object yang terdistibusi(library yang luas untuk di rangkai pada protocol TCP/IP),yang kuat(robust), aman(secure), arsitektur yang netral,portable,interpreter(mengeksekusi kode java),high performance,multireaded dan dinamis.
Jenis-jenis java yaitu :
            1. Java 2 Standard Edition (J2SE)
2. Java 2 Enterprise Edition (J2EE)
3. java 2 Micro Edition (J2ME)

Setelah kita mengetahui apa arti dari java,berikut ini adalah penjelasan dari file stream network,network stream,public,dan protected pada java.

1. Public pada java.
            Adalah  kata kunci yang menyatakan anggota yang di akses akses sebagai publik. Anggota masyarakat yang terlihat untuk semua kelas lainnya. jadi setiap kelas lain dapat mengakses public lapangan atau metode. Selanjutnya, kelas-kelas lain dapat memodifikasi public bidang kecuali lapangan dinyatakan sebagai final .
- Hal ini digunakan sebagai pengubah kontrol akses. 
- Hal ini berlaku untuk kelas, metode atau lapangan. 
- Public class, metode atau variabel yang terlihat untuk semua kelas didefinisikan dalam paket yang berbeda. 
- Sebuah kelas publik, metode atau lapangan dapat dirujuk dari luar kelas di mana ia dinyatakan. 
Contohnya:
Menggunakan Kata Kunci publik dalam kelas 
public class ClassName {
public class ClassName1;
}
Mendeklarasikan Variabel publik
public class ClassName
{
public class ClassName1;
public int i;
}
Mendeklarasikan Method publik
public class ClassName { 
public String Metode () {
 
<statements>
 
<statements>
 
...
 

<statements>
 
}
 
}

2. Protected,
hanya bisa digunakan untuk class tersebut dan class turunannya yang dapat menggunakan object dengan modifier tersebutProteted adalah Class member dapat diakses di dalam package yang sama dan sub classnya. Subclass dapat berada di paket yang berbeda subclassnya akan mewarisi member variabel
Contoh:
class Murid {
  protected String nama;

  protected String kata() {
    return “saya adalah pelajar”;
  }
}

3. Private, digunakan apabila object tersebut diperuntukan hanya untuk class tersebut dan tidak ada class lain yang diizinkan untuk menggunakan object tersebut.
Contoh :
class Murid {
 private String nama;

  private String kata() {
    return “saya adalah pelajar”;
  }
}

Enkasuplasi atau pengkapsulan memiliki pengertian yaitu teknik yang membuat variabel/field class menjadi bersifat privat dan menyediakan akses ke variabel/field melalui public method. Jika field di deklarasikan sebagai private, maka field ini tidak bisa diakses oleh siapapun diluar class, dengan demikian field disembunyikan di dalam class. Dengan kata lain enkapsulasi juga berfungsi untuk menyembunyikan elemen dari penggunaan sebuah class dapat dilakukan dengan pembuatan anggota yang ingin Anda sembunyikan secara private.. Encapsulation juga merupakan tembok penghalang yang mencegah kode atau data diakses oleh data lain di luar class. Akses ke kode dan data di kontrol melalui interface.
Beberapa metoda lebih lanjut dalam menerapkan enkapsulasi adalah: anggota-anggota kelas privat, anggota-anggota kelas privat statis, kawan-kawan, dan obyek-obyek kelas pembantu.
  • Anggota kelas privat, enkapsulasi diterapkan dengan mendefinisikan variabel-variabel dan fungsi-fungsi dari sebuah kelas sebagai privat. Anda bisa menganggap bahwa fungsi-fungsi anggota kelas (juga dikenal sebagai metode) didefinisikan sebagai publik yang secara internal memanipulasi variabel-variabel dan fungsi-fungsi anggota privat.
  • Anggota kelas statis privat, sebuah fitur kelas standar yang mendukung enkapsulasi dalam kebanyakan bahasa berorientasi obyek adalah kemampuan untuk mendefinisikan anggota-anggota kelas statis. Variabel-variabel dan fungsi-fungsi anggota statis adalah anggota-anggota dari suatu kelas bukan angota-anggota dari obyek-obyek kelas. Anggota statis dibuat sekali untuk suatu kelas dan berlaku global untuk semua bentuk dari kelas itu.
  • Sebuah tipe obyek bisa berupa sebuah kawan bagi tipe lainnya.

Contoh program:
Berikut ini adalah pemprograman java dengan menggunakan netbeans,di program ini saya akan membuat sebuah program tentang perkuliahan,yang dimana di dalamnya terdapat mahasiswa,dosen,orang.setelah kita membuat sebuah roject data perkuliahan maka kita melanjutkan isi-isinya yang dimana sub-sub kelasnya dari perkuliahan,,cara untuk memasukan sub-sub perkuliahannya caranya adalah klik kanan pilih new lalu pilih java class yang dimana terdiri dari mahasiswa,dosen,orang,masing-masing di buat sub kelasnya 1 persatu.
Untuk coding pada perkuliahannya adalah :
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package perkuliahan;
/**
 *
 * @author Hp
 */
public class Perkuliahan {
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        dosen1 dsn = new dosen1 ("ary bima","79758679","algoritmapemrograman");
        mahasiswa1 mhs = new mahasiswa1 ("rahmat ali yatendra","251115775","06-08-1993");
        System.out.println (dsn.displayInfo());
        System.out.println (mhs.displayInfo());
    }
}
Kemudian subkelas dari perkuliahan itu yang bernama dosen kita masukan coddingnya  yaitu :
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package perkuliahan;
/**
 *
 * @author Hp
 */
public class dosen1 extends orang1 {
private String nip="";
private String matakuliah="";
public dosen1 (String nm, String np, String mk)
{super (nm);
nip=np;
matakuliah=mk;
}
public void setNip (String np)
{this.nip=np;}
public String getNip ()
{return nip;}
public void setmatakuliah(String mk)
{
this.matakuliah=mk;
}
public String getMatakuliah()
{
return matakuliah;
}
public String displayInfo()
{return super.displayInfo()+" ,NIP: "+nip+ " ,matakuliah: "+matakuliah; 
}   
}
Kemudian subkelas dari perkuliahan itu yang bernama mahasiswa kita masukan coddingnya  yaitu :
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package perkuliahan;
/**
 *
 * @author Hp
 */
public class mahasiswa1 extends orang1 {
    private String npm="";
    private String tanggallahir="";
    public mahasiswa1 (String nm, String ni, String tl)
    {super (nm);
    npm=ni;
    tanggallahir=tl;
    }
    public void setNpm (String ni)
    {this.npm=ni;}
    public String getNpm()
    {return npm;}
    public void settanggallahir(String tl)
{
this.tanggallahir=tl;
}
public String gettanggallahir()
{
return tanggallahir;
}
    public String displayInfo()
    {return super.displayInfo()+" ,NPM: "+npm+ " ,tanggallahir: "+tanggallahir;
    }
      
}
Kemudian subkelas dari perkuliahan itu yang bernama orang kita masukan coddingnya  yaitu :
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package perkuliahan;
/**
 *
 * @author Hp
 */
public class orang1 {
private String nama="";
    public orang1 (String nm)
    {nama = nm;
            }
    public void setNama (String nm)
    {this.nama = nm;}
    public String getNama ()
    {return nama;}
    public String displayInfo()
    {return "Nama: " +nama;
    }
                
}
Setelah itu kita run maka hasilnya seperti ini:


Sumber : Wikipedia.co.id
    org.wikibooks.java
     www.roseindia
    http://bernazlionk.wordpress.com
    dan lainnya

1 komentar: