Advertisement
Iam_Sandeep

Untitled

Apr 21st, 2022
984
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.66 KB | None | 0 0
  1. import java.util.*;
  2.  
  3. public class Main {
  4.   public static void main(String[] args) {
  5.     Music m1 = new Music();
  6.     m1.setTitle("After Hours");
  7.     m1.setType("Music");
  8.     m1.setTotalPlayingTime(60);
  9.     m1.setArtist("The Weeknd");
  10.     m1.setNumberOfTracks(7);
  11.    
  12.     Music m2 = new Music();
  13.     m2.setTitle("Life is Good");
  14.     m2.setType("Music");
  15.     m2.setTotalPlayingTime(4);
  16.     m2.setArtist("Drake");
  17.     m2.setNumberOfTracks(1);
  18.  
  19.     Video v1 = new Video();
  20.     v1.setTitle("The Godfather");
  21.     v1.setType("Video");
  22.     v1.setTotalPlayingTime(300);
  23.     v1.setDirector("Francis Ford Coppola");
  24.  
  25.     Video v2 = new Video();
  26.     v2.setTitle("Inception");
  27.     v2.setType("Video");
  28.     v2.setTotalPlayingTime(350);
  29.     v2.setDirector("Christopher Nolan");
  30.     Video v3 = new Video();
  31.     v3.setTitle("Forrest Gump");
  32.     v3.setType("Video");
  33.     v3.setTotalPlayingTime(200);
  34.     v3.setDirector("Robert Zemeckis");
  35.     Item i1 = new Item();
  36.     i1.setTitle("Hollywood Bleeding");
  37.     i1.setType("Album");
  38.     i1.setTotalPlayingTime(60);
  39.     Item i2 = new Item();
  40.     i2.setTitle("False Alarm");
  41.     i2.setType("Music");
  42.     i2.setTotalPlayingTime(5);
  43.     Item i3 = new Item();
  44.     i3.setTitle("Eternal Atake");
  45.     i3.setType("Album");
  46.     i3.setTotalPlayingTime(65);
  47.     Item i4 = new Item();
  48.     i4.setTitle("E.T. the Extra-Terrestrial");
  49.     i4.setType("Video");
  50.     i4.setTotalPlayingTime(5);
  51.  
  52.     DataBase db1 = new DataBase();
  53.     db1.addItem(m1);
  54.     db1.addItem(m2);
  55.     db1.addItem(v1);
  56.     db1.addItem(v2);
  57.     db1.addItem(v3);
  58.     db1.addItem(i1);
  59.     db1.addItem(i2);
  60.     db1.addItem(i3);
  61.     db1.addItem(i4);
  62.     System.out.println("Displaying the records in the database:: \n");
  63.     db1.display();
  64.     System.out.println("");
  65.     System.out.println("Number of all items: " + db1.allItems());
  66.     System.out.println("Number of Music items: " + db1.musicItems());
  67.     System.out.println("Number of Video items: " + db1.videoItems());
  68.     System.out.println("Number of items that are neither Music nor Video: " + db1.neither());
  69.   }
  70. }
  71. class Item {
  72.   // the Item class has three fields
  73.   private String title, type;
  74.   private int totalPlayingTime;
  75.   // Getter
  76.   public String getTitle() {
  77.     return title;
  78.   }
  79.  
  80.   public String getType() {
  81.     return type;
  82.   }
  83.  
  84.   public int getTotalPlayingTime() {
  85.     return totalPlayingTime;
  86.   }
  87.  
  88.   // Setter
  89.   public void setTitle(String newTitle) {
  90.     this.title = newTitle;
  91.   }
  92.  
  93.   public void setType(String newType) {
  94.     this.type = newType;
  95.   }
  96.  
  97.   public void setTotalPlayingTime(int newTotalPlayingTime) {
  98.     this.totalPlayingTime = newTotalPlayingTime;
  99.   }
  100.  
  101.   // toString() method to print info of Item
  102.   public String toString() {
  103.     return ("Title is " + title + ", Type is " + type +
  104.       ", Total playing time is " + totalPlayingTime);
  105.   }
  106. }
  107.  
  108. // derived class
  109. class Music extends Item {
  110.  
  111.   // the Music class has two fields
  112.   private String artist;
  113.   private int numberOfTracks;
  114.   // Getter
  115.   public String getArtist() {
  116.     return artist;
  117.   }
  118.  
  119.   public int getNumberOfTracks() {
  120.     return numberOfTracks;
  121.   }
  122.  
  123.   // Setter
  124.   public void setArtist(String newArtist) {
  125.     this.artist = newArtist;
  126.   }
  127.  
  128.   public void setNumberOfTracks(int newNumberOfTracks) {
  129.     this.numberOfTracks = newNumberOfTracks;
  130.   }
  131.  
  132.   // overriding toString() method
  133.   // of Item to print more info
  134.   @Override
  135.   public String toString() {
  136.     return (super.toString() + ", Artist is " + artist +
  137.       ", Number of Tracks is " + numberOfTracks);
  138.   }
  139.  
  140. }
  141.  
  142. // derived class
  143. class Video extends Item {
  144.  
  145.   // the Music class has two fields
  146.   private String director;
  147.  
  148.   // Getter
  149.   public String getDirector() {
  150.     return director;
  151.   }
  152.  
  153.   // Setter
  154.   public void setDirector(String newDirector) {
  155.     this.director = newDirector;
  156.   }
  157.  
  158.   // overriding toString() method
  159.   // of Item to print more info
  160.   @Override
  161.   public String toString() {
  162.     return (super.toString() + ", Director is " + director);
  163.   }
  164.  
  165. }
  166.  
  167. class DataBase {
  168.   //
  169.   ArrayList < Item > db = new ArrayList < Item > ();
  170.  
  171.   public void addItem(Item newItem) {
  172.     db.add(newItem);
  173.   }
  174.  
  175.   public void display() {
  176.     ListIterator < Item > li = db.listIterator(db.size());
  177.     while (li.hasPrevious()) {
  178.       Item i = li.previous();
  179.       System.out.println(i.toString());
  180.     }
  181.   }
  182.  
  183.   public int allItems() {
  184.     return db.size();
  185.   }
  186.  
  187.   public int musicItems() {
  188.     int count = 0;
  189.     for (int i = 0; i < db.size(); i++) {
  190.       Item it = db.get(i);
  191.       String str = "Music";
  192.       if (str.equals(it.getType()) == true)
  193.         count++;
  194.     }
  195.     return count;
  196.   }
  197. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement