Hi everyone!
I'm using a super class (DVD.java) that handles another class (EnhancedDVD.ja va). I want to pass the "details" of the DVD into the super class DVD.java. The super class contains the Title, RegionCode, Format, and Length of a dummy DVD...let's say..."Forrest Gump." But I can't figure out how to do this and I have 4 errors going on when I compile the two classes. I have a driver that runs the System.out.prin tln's. But I think it might be handling the classes wrongly as well. Any help? What am I doing wrong?
I want to take this one step at a time. First I'd like to just print out the "details" of the DVD, not worrying about the toString method in the DVD.java class.
But anyways...here' s my code for the two classes and the driver. I'll bold where my errors exist, they exist in the ENHANCEDDVD.jav a class...i have 3 errors
DVD.java class
--------------------------------------------------------------------------------------------------------
EnhancedDVD.jav a
------------------------------------------------------------------------------------------------------
Driver class
----------------------------------------------------------------------------------------------------------
I'm using a super class (DVD.java) that handles another class (EnhancedDVD.ja va). I want to pass the "details" of the DVD into the super class DVD.java. The super class contains the Title, RegionCode, Format, and Length of a dummy DVD...let's say..."Forrest Gump." But I can't figure out how to do this and I have 4 errors going on when I compile the two classes. I have a driver that runs the System.out.prin tln's. But I think it might be handling the classes wrongly as well. Any help? What am I doing wrong?
I want to take this one step at a time. First I'd like to just print out the "details" of the DVD, not worrying about the toString method in the DVD.java class.
But anyways...here' s my code for the two classes and the driver. I'll bold where my errors exist, they exist in the ENHANCEDDVD.jav a class...i have 3 errors
DVD.java class
--------------------------------------------------------------------------------------------------------
Code:
/*
* File: DVD.java
* Author:
* Vers: 1.0.0.0, 1/31/2008, jdm - Initial coding
* Vers: 1.0.0.1, 2/19/2008, jdm - modified for TUI
* Vers. 1.0.0.2, 2/28/2008, jdm - modified for super class
* Desc: This program models a DVD in several ways.
*/
/**
* Beginning of the DVD class
*/
public class DVD
{
public static final int REGION_FREE = 0; // Final variable for the DVD region_free code
public static final int NTSC_FORMAT = 1; // Final variable for the DVD NTSC_format
public static final int PAL_FORMAT = 2; // Final variable for the DVD PAL_format
public static final int DVD_SECTOR_SIZE = 2048; // Final variable for the DVD sector size
public static final int DATA_RATE = 4096 * 1000; // Final variable for the DVD sector size in bytes
public static int serialNumberDVD = 0; // int static variable for the DVD serial number
public static int region; // int variable for the DVD region
public static int format; // int variable for the DVD format
public static String title; // String variable for the DVD title
public static double length = 0.0; // double variable for the DVD length in minutes
private int sectorNumber = 0; // int variable for the DVD length in minutes
/**
* Constructor: builds the DVD object
*/
public DVD(String title, int region, int format, double length)
{
this.title = title; // initialization of title
this.region = region; // initialization of region
this.format = format; // initialization of format
this.length = length; // initialization of length
serialNumberDVD = serialNumberDVD + 1; // increments the serial number
}
//Queries:-----------------------------------------
/**
* Query: getClassAuthor
*/
public static String getClassAuthor() // returns name of class’ author (my name)
{
return " my name " + "\n"; // returns my name
}
/**
* Query: returns the DVD sector number
*/
public long getSectorNumber(double minutes)
{
long bytesToGoThrough = (long)(minutes * 60 * DATA_RATE) / 8; // converts to bits
long sectorNumber = bytesToGoThrough / DVD_SECTOR_SIZE + 1024; // computes the sector size of the DVD
return sectorNumber; // returns the sector number
}
/**
* Query: returns the DVD serial number
*/
public static int getSerialNumberDVD()
{
return serialNumberDVD; // returns the serial number
}
/**
* Query: returns the DVD title
*/
public static String getTitle()
{
if (region >= 0 && region <= 8) // conditional AND statement
{
return title; // return DVD title
}
else
{
return "Bad Region Code"; // return Bad Region Code
}
}
/**
* Query: returns the DVD region
*/
public int getRegion()
{
return region; // returns the DVD region
}
/**
* Query: returns the DVD format
*/
public int getFormat()
{
return format; // returns the DVD format
}
/**
* Query: returns the DVD length
*/
public double getLength()
{
return length; // returns the DVD length
}
//Commands:--------------------------------------------
/**
* Command: toString
*/
public String toString() // returns a text representation of all the data pertaining to a given
// DVD: "serial number, title, region, format, length."
{
// return of the full DVD printable object - formatted as a form
// (properly formatted for display, and without the quotes).
return "\n" + "Serial Number: " + getSerialNumberDVD() + "\n" +
"Title: " + getTitle() + "\n" +
"Region Code: " + getRegion() + "\n" +
"Format: " + getFormat() + "\n" +
"Length: " + getLength();
}
}
------------------------------------------------------------------------------------------------------
Code:
/*
* File: EnhancedDVD.java
* Author:
* Vers: 1.0.0.0, 3/4/2008, jdm - Initial coding
* Desc: This class gathers "details" for a DVD
*/
/**
* Beginning of the EnhancedDVD class.
*/
[U][I][B]public class EnhancedDVD implements DVD[/B][/I][/U]
{
public String dvdDetails = ""; // string DVD details
/**
* Constructor: EnhancedDVD constructor that passes in the initial DVD details (dvdDetails).
*/
public EnhancedDVD(String title, int region, int format, double length, String dvdDetails)
{
[U][I][B]super(title, region, format, length); // passes the dvdDetails into the EnhancedDVD constructor[/B][/I][/U] this.dvdDetails = dvdDetails; // assign this dvdDetails to dvdDetails
}
// --------------- Beginning of queries ---------------------------
/**
* Query: getdvdDetails
*/
public String getDetails()
{
return dvdDetails; // return of the DVD's details
}
// --------------- Beginning of commands ---------------------------
/**
* Command: setDVDDetails
*/
public static void setDetails(String DetailsOfDVD)
{
[U][I][B]this.dvdDetails = DetailsofDVD; // sets the DVD's details[/B][/I][/U]
}
public String toString() // returns a text representation of all the data pertaining to a given
// DVD's details: stars of the movie, movie rating, genre, basic plot, etc., etc.,
{
// return of the details of the DVD printable object - formatted as a form
// (properly formatted for display, and without the quotes).
return "\n" + "Details: " + getDetails();
}
}
----------------------------------------------------------------------------------------------------------
Code:
/*
* File: Driver5.java
* Author:
* Vers: 1.0.0.0, 2/28/2008, jdm - Initial coding
* Desc: This is a driver for the program
*/
public class Driver5 {
public static void main(String[] args) {
System.out.println("Spring 2008 P5 by " + DVD.getClassAuthor()); // print my name as author
EnhancedDVD newDVD = new EnhancedDVD("Forrest Gump", 1, DVD.NTSC_FORMAT, 200.); // creates the newDVD object
EnhancedDVD.setDetails("Stars: Tom Hanks, Robin White" + "\n" +
"Rating: PG-13" + "\n" +
"Genre: Drama" + "\n" +
"Plot: The title character leads viewers through an accidental" + "\n" +
"travelogue of American social history from the early 1960s" + "\n" +
"through the present in this revisionist fable.");
//System.out.println(newdvd); // print dvd
//System.out.println("Last Sectors:"); // print DVD sectors
//System.out.println("For \"" + dvd.getTitle() + "\": " +
// dvd.getSectorNumber(dvd.getLength())); // print dvd1 sectors
System.out.println(newDVD); // print the details of the DVD
}
}
Comment