TUGAS 4
Latihan Inheritance
/**
* Class untuk item yang merupakan superclass dari class cd dan dvd
* Marsha Nabilah
*/
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
* Marsha Nabilah
*/
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
* Marsha Nabilah
*/
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
* Marsha Nabilah
*/
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();
}
}
}
Comments
Post a Comment