Dalam Paradigma Pemograman Berorientasi Objek dikenal Kelas dan Objek. Kelas merupakan prototype yang mendefinisikan variabel dan method secara umum. Sedangkan objek merupakan instantiasi dari suatu kelas. Ada 2 bagian utama dari kelas java yaitu kelas deklarasi dan kelas body. Kelas deklarasi mendefinisikan nama kelas dan atributnya sedangkan kelas body mendefinisikan variabel dan methodnya.
Deklarasi kelas pada Java
Class <nama-kelas>
Sebagai contoh kita ambil kelas manusia. Kelas manusia mempunyai atribut : nama. Selain itu kelas manusia juga mempunyai method: tampilkanNama, kerja, makan.
// Disimpan dalam bentuk file sepeda.java
public class sepeda{private String merk, pemilik;public sepeda (String merk, String pemilik){this.merk = merk;this.pemilik = pemilik;}public String getmerk(){return merk;}public String getpemilik(){return pemilik;}public static void main(String[] args){//pembuatan objek sepeda1 san sepeda2sepeda sepeda1= new sepeda("Yamaha","Pak Darmawan");sepeda sepeda2= new sepeda("Honda","Pak Nasirrudin");System.out.println("sepeda-1");System.out.println("Merek : " + sepeda1.getmerk());System.out.println("Pemilik : " + sepeda1.getpemilik());System.out.println(" ");System.out.println("sepeda-2");System.out.println("Merek : " + sepeda2.getmerk());System.out.println("Pemilik : " + sepeda2.getpemilik());}}
Dalam contoh diatas, kelas dan objek berada pada satu file .java.
Namun, pada lain kasus, kelas dan objek pada suatu program dapat terpisah dalam dua file .java
Misal :
/* Disimpan dalam file “mahasiswa.java” */
//Class Deklarasipublic class mahasiswa{//Variabelpublic String nama,nrp;//Konstruktorpublic mahasiswa (String nama, String nrp){this.nama = nama;this.nrp = nrp;}
//Methodpublic String tampilkanNama(){return nama;}public String tampilkanNrp(){return nrp;}public void belajar(){System.out.println("Ayo Belajar...");}
public void olahraga(){System.out.println("Ayo Olahraga...");}public void makan(){System.out.println("Ayo Makan...");}public void minum(){System.out.println("Ayo Minum...");}}
Adapun contoh kode untuk menginstantiasi kelas mahasiswa menjadi objek Andi, Budi dan Santi yang mengimplementasikan metodh: tampilkanNama, tampilkanNrp daa metodh lainnya adalah sebagai berikut.
/* Disimpan dalam file “nama.java”*/class nama {public static void main(String arg[]){mahasiswa andi = new mahasiswa("Andi","09.04.111.00045");System.out.println("Nama :" + andi.tampilkanNama());System.out.println("NRP : " + andi.tampilkanNrp());andi.belajar();System.out.println("------");mahasiswa budi = new mahasiswa("Budi","09.04.111.00035");System.out.println("Nama :" + budi.tampilkanNama());System.out.println("NRP : " + budi.tampilkanNrp());budi.makan();System.out.println("------");mahasiswa santi = new mahasiswa("Santi","09.04.111.00112");System.out.println("Nama :" + santi.tampilkanNama());System.out.println("NRP : " + santi.tampilkanNrp());santi.olahraga();}}
Berikut adalah satu contoh tambahan program dengan kelas dan objek didalamnnya.
/*Disimpan dalam file "televisi.java"*/public class televisi{//Variabelpublic String Merek,Tipe,Ukuran,volume,channel;//Konstruktorpublic televisi (String E){this.Merek = E;this.Tipe = E;this.Ukuran = E;this.volume = E;this.channel = E;}//methodpublic String TampilMerek(){return Merek ;}public String TampilTipe(){return Tipe ;}public String TampilUkuran(){return Ukuran ;}public void nyalakantv(){System.out.println("Menyalakan Televisi,..");}public void pindahchannel(){System.out.println("Channel berpindah,..");}public void tambahvolume(){System.out.println("Volumenya bertambah besar");}public void any(){System.out.println("Press Any Key,..");}
public static void main (String arg[]){televisi Merek= new televisi("Samsung");televisi Tipe= new televisi("LCD TV");televisi Ukuran= new televisi("52 inchi");System.out.println("Merek Televisi= "+ Merek.TampilMerek());System.out.println("Tipe Televisi= "+ Tipe.TampilTipe());System.out.println("Ukuran Televisi= "+ Ukuran.TampilUkuran());Merek.nyalakantv();Tipe.pindahchannel();Tipe.tambahvolume();Merek.any();}}
Hasil Running televisi.java