import java.util.Scanner; public class Zadaca { public static void main(String[] args) { Media b1 = new Book("Zoki Poki", "Olivera", 50); Media b2 = new Book("Doktor Ofboli", "Ofboli", 105); Media b3 = new Book("ABC", "BCD", 300); Media m1 = new Movie("Titanik", "Titanik", 2.5); Media m2 = new Movie("Movie", "Movie", 3.5); Movie m3 = new Movie("XYZ", "XYZ", 15.6); Media[] medias = new Media[6]; medias[0] = b1; medias[1] = b2; medias[2] = b3; medias[3] = m1; medias[4] = m2; medias[5] = m3; Library library = new Library(); library.displayAllMedia(medias); } } class Media { String title; String creator; public Media(String title, String creator) { this.title = title; this.creator = creator; } public String getTitle() { return title; } public String getCreator() { return creator; } public void displayInfo() { System.out.println("Title: " + title); System.out.println("Creator: " + creator); } } class Book extends Media { int numPages; public Book(String title, String creator, int numPages) { super(title, creator); this.numPages = numPages; } public void readSample() { System.out.println("The sample pages are available to read " + numPages); } @Override public void displayInfo() { super.displayInfo(); System.out.println("Number of pages: " + numPages); } } class Movie extends Media { double duration; public Movie(String title, String creator, double duration) { super(title, creator); this.duration = duration; } public void watchTrailer() { System.out.println("This trailer is available to watch: " + duration); } @Override public void displayInfo() { super.displayInfo(); System.out.println("Duration: " + duration); } } class Library { public void displayAllMedia(Media[] medias) { for(int i = 0; i < medias.length; i++) { medias[i].displayInfo(); if(medias[i] instanceof Book) { Book book = (Book) medias[i]; book.readSample(); } else if(medias[i] instanceof Movie) { Movie movie = (Movie) medias[i]; movie.watchTrailer(); } } } }