TUGAS 4

Latihan Inheritance


Studi kasus multi-media item yang terdiri dari item CD dan DVD:
Ada 4 class yang dibutuhkan yaitu class item sebagai superclass, class cd dan class dvd sebagai subclass dari class item serta class database untuk menyimpan data item


Kode dari setiap class:
1. Class item

 /**
 * Class untuk item yang merupakan superclass dari class cd dan dvd
 * Iqbaal Pratama Putra
 */
public class item {
    private String title;
    private int playingtime;
    private boolean gotit;
    private String comment;
    public item(String title, int playingtime) //constructor
    {
        this.title=title;
        this.playingtime=playingtime;
        this.gotit=false;
        this.comment="";
    }
    public void setComment(String comment)//method untuk memasukkan comment item
    {
        this.comment=comment;
    }
    public String getComment() //method untuk mereturn comment item
    {
        return this.comment;
    }
    public void setGotit(boolean gotit) //method untuk memasukkan nilai ketersediaan item
    {
    
        this.gotit=gotit;
    }
    public boolean getGotit() //method untuk mereturn nilai ketersediaan item
    {
        return this.gotit;
    }
    public void cetak() //method untuk mencetak item
    {
        System.out.println("Title: " + title + "( " + playingtime + " mins)" );
        if(gotit) //cek item tersedia atau tidak
        {
            System.out.println("Available");
        }
        else
        {
            System.out.println("Not Available");
        }
        System.out.println(comment);
    }
}


2. Class cd

/**
 * Class untuk cd yang merupakan subclass dari class item
 * Iqbaal Pratama Putra
 */
public class cd extends item 
{
    private String artist;
    private int numberoftracks;
    public cd(String title, int playingtime, String artist, int numberoftracks) //constructor
    {
        super(title,playingtime);
        this.artist=artist;
        this.numberoftracks=numberoftracks;
    }
    
    public void setComment(String comment) //method untuk memasukkan comment cd melalui class cd
    {
        super.setComment(comment);
    }
    public void setGotit(boolean gotit) //method untuk memasukkan nilai ketersediaan cd melalui class cd
    {
        super.setGotit(gotit);
    }
    public String getArtist() //method untuk mereturn nama artist
    {
        return artist;
    }
    public int getNumber() //method untuk mereturn jumlah tracks
    {
        return numberoftracks;
    }
    public void print() //method tambahan untuk mencetak nama artis dan jumlah tracks
    {
        super.cetak();
        System.out.println("Artist: " + artist);
        System.out.println("Number of tracks: " + numberoftracks); 
    }
}


3. Class dvd

/**
 * Class untuk dvd yang merupakan subclass dari class item
 * Iqbaal Pratama Putra
 */
public class dvd extends item 
{
    private String director;
    public dvd(String title, int playingtime, String director) //constructor
    {
        super(title,playingtime);
        this.director=director;
    }
    public void setComment(String comment) //method untuk memasukkan comment dvd melalui class dvd
    {
        super.setComment(comment);
    }
    public void setGotit(boolean gotit) //method untuk memasukkan nilai ketersediaan dvd melalui class dvd
    {
        super.setGotit(gotit);
    }
    public String getDirector() //method untuk mereturn nama director
    {
        return director;
    }
    public void print() //method tambahan untuk mencetak nama director
    {
        super.cetak();
        System.out.println("Director: " + director); 
    }
}


4. Class database

/**
 * Class untuk menyimpan data dari item
 * Iqbaal Pratama Putra
 */
import java.util.ArrayList;
 
public class database 
{
    private ArrayList<item> barang; //declare array list dengan tipe iem
    public database() //constructor
    {
        barang = new ArrayList<item>();
    }
    public void additem(item items) //method untuk menambah item
    {
        barang.add(items);
    }
    public void removeitem(item items) //method untuk meremove item
    {
        barang.remove(items);
    }
    public void cetak() //method untuk mencetak arraylist item
    {
        for(item b: barang )
        {
            if(b instanceof cd) //jika item b merupakan cd maka mencetak nama artis dan jumlah tracks
            {
                cd a = (cd) b;
                a.print();
             }
            else
            {
                dvd a = (dvd) b; //jika item b merupakan dvd maka mencetak nama director
                a.print();
            }
            System.out.println();
        }
    }
    
}


Cara run dan hasil run program:
1. Buat objek dari salah satu atau keduanya dari cd atau dvd

2. Isi nilai pada attribut

3. Isi nilai atribut comment dan ketersediaan


4. Jika sudah membuat objek cd dan atau dvd maka langkah selanjutnya yaitu membuat class database

5. Menambah item pada class database
6. Mengisikan objek item berdasar objek cd dan objek dvd yang sudah dibuat sebelumnya
  

7. Mencetak database yang sudah dibuat

 


Komentar

Postingan populer dari blog ini

ETS PBO

Tugas 9 - CRUD Menggunakan Framework CodeIgniter

TUGAS 1