Class dan Objek

Class

Class mengizinkan Anda dalam mendeklarasikan tipe data baru. Ia dijalankan sebagai blueprint, dimana model dari object yang Anda buat berdasarkan pada tipe data baru ini.

Mendeklarasikan class Java

<classDeclaration> ::=

<modifier> class <name> {

<attributeDeclaration>*

<constructorDeclaration>*

<methodDeclaration>*

}

dimana <modifier> adalah sebuah access modifier, yang mana boleh dikombinasikan dengan tipe yang laen dari modifier.   

Object

Sebuah object adalah sebuah entiti yang memiliki keadaan, behaviour dan identitas yang yang tugasnya dirumuskan dalam suatu lingkup masalah dengan baik. Inilah instance sebenarnya dari sebuah class. Ini juga dikenal sebagai instance. Instance dibuat sewaktu Anda meng-instantiate class menggunakan kata kunci new. Dalam sistem registrasi siswa, contoh dari sebuah object yaitu entiti Student.

   Atribut

Atribut menunjuk pada elemen data dari sebuah object. Atribut menyimpan informasi tentang object. Dikenal juga sebagai member data, variabel instance, properti atau sebuah field data.Kembali lagi ke contoh sistem registrasi siswa, atribut dari sebuah siswa adalah nomor siswa.

    

  Method

Sebuah method menjelaskan behaviour dari sebuah object. Method juga dikenal sebagai fungsi atau prosedur. Sebagai contoh, method yang mungkin tersedia untuk entiti siswa adalah method register.

Mendeklarasikan Method

<methodDeclaration> ::=

<modifier> <returnType> <name>(<parameter>*) {

<statement>*

}

<parameter> ::=

<parameter_type> <parameter_name>[,]

      Konstruktor

Konstruktor adalah sebuah tipe khusus dari method yang digunakan untuk membuat dan menginisialisasi sebuah object baru. Ingat bahwa konstruktor bukan member(yaitu atribut, method atau inner class dari sebuah object).

Mendeklarasikan sebuah Konstruktor

<constructorDeclaration> ::=

<modifier> <className> (<parameter>*) {

<statement>*

}

Jika tidak ada konstruktor yang disediakan secara jelas, konstruktor default secara otomatis

membuatkannya untuk Anda. Konstruktor default tidak membawa argumen dan tidak berisi pernyataan pada tubuh class.

Meng-instansiasi sebuah class

Untuk meng-instantiate sebuah class, dengan sederhana kita gunakan kata kunci new diikuti

dengan pemanggilan sebuah konstruktor. Mari lihat langsung ke contohnya.

class ConstructObj {

int data;

ConstructObj() {

/* menginisialisasi data */

}

public static void main(String args[]) {

ConstructObj obj = new ConstructObj(); //di-instantiate

}

}

contoh program game tamogocci.

sebuah class yang menggambarkan prototype untuk salah satu karakter dalam game tamagochi (Misalkan karakter kura-kura). Karakter tersebut memiliki property seperti kesehatan, kekuatan, pengalaman. Selain itu. Karakter kura-kura tersebut memiliki behaviour seperti, makan,  minum berjalan, bertarung. Nilai dari property tersebut akan berubah-ubah jika karakter-karakter tersebut melakukan tindakan dibawah:

Kura-kura makan : kekuatan+2, vitality +3, experience 0

Kura-kura berjalan : kesehatan -1, kekuatan -1, pengalaman +2

Kura-kura bertarung: kesehatan-2, kekuatan -3, pengalaman-3

Kura-kura minum: kesehatan+1, kekuatan+1, pengalaman- 0

kita buat instansiasi objek.

package javaapplication2;

import javax.swing.JOptionPane;

class kura2{

public int kesehatan, kekuatan, pengalaman;

public void kura2(){

kesehatan = 0;

kekuatan = 0;

pengalaman = 0;

}

public void makan(){

     kesehatan=kesehatan+2;

     kekuatan=kekuatan+3;

     pengalaman=pengalaman+0;

          if(kesehatan<=0 && kekuatan<=0){

        JOptionPane.showMessageDialog(null,”Maaf, Anda kalah”);

     }

}

public void berjalan (){

     kesehatan=kesehatan-1;

     kekuatan=kekuatan-1;

     pengalaman=pengalaman+2;

          if(kesehatan<=0 && kekuatan<=0){

        JOptionPane.showMessageDialog(null,”Maaf, Anda kalah”);

     }

}

public void bertarung(){

     kesehatan=kesehatan-2;

     kekuatan=kekuatan-3;

     pengalaman=pengalaman+3;

     if(kesehatan<=0 && kekuatan<=0){

        JOptionPane.showMessageDialog(null,”Maaf, Anda kalah”);

     }

}

public void minum(){

     kesehatan=kesehatan+1;

     kekuatan=kekuatan+1;

     pengalaman=pengalaman+0;

          if(kesehatan<=0 && kekuatan<=0){

        JOptionPane.showMessageDialog(null,”Maaf, Anda kalah”);

     }

}

public void tampil(){

  JOptionPane.showMessageDialog(null,”Kesehatan kura-kura   : “+kesehatan+

                                     “\nKekuatan kura-kura  : “+kekuatan+

                                     “\nPengalaman kura-kura: “+pengalaman);

}

}

public class tamagoci {

     public static void main(String[] args) {

        int p = 0;

        kura2 game = new kura2();

        game.kura2();

        game.tampil();

        while(true){

            String Input= JOptionPane.showInputDialog(null,”Pilihan:  \n1. Kura-Kura Makan \n2. Kura-Kura Berjalan \n3. Kura-Kura bertarung \n4. Kura-Kura Minum \n5. Exit”);

            int pil= Integer.parseInt(Input);

        if (pil==1){

          game.makan();

          game.tampil();

          }

        else if(pil==2){

          game.berjalan();

          game.tampil();

        }

        else if(pil==3){

          game.bertarung();

          game.tampil();

        }

        else if(pil==4){

          game.minum();

          game.tampil();

        }

        else if(pil==5){

          System.exit(0);

        }

        else {

        JOptionPane.showMessageDialog(null,”Maaf, Pilihan tidak ada.”);

        }

      }

     }

}

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s