Catalog Java Exercise - Java Programming Course

 Exercise

Catalog

 Objetive

Create the classes diagram and then, using Visual Studio, a project and the corresponding classes for a catalog utility:

It will be able to store information about music files, films and computer programs.
For each item, it must store: name, code, category and size. For films it must also hold the director, the main actor and the main actress. For music files, the singer and the length (in seconds).
For music and movies it must have a method "Play" (not implemented yet) and also a method "RetrieveInformation", which will (in a later version) connect to an internet server to get information about it.
Use inheritance if needed. In "Main", create arrays of each kind of object.

 Example Code

package Catalog;
public class Main
{
	public static void main(String[] args)
	{
		Film[] myFilms = new Film[3];
		Music[] myMusic = new Music[3];
		ComputerProgram[] myComputerProgram = new ComputerProgram[3];
	}
}

public class Item
{
	protected String name;
	protected String code;
	protected String category;
	protected String size;

	public Item()
	{
	}
	public Item(String name, String code, String category, String size)
	{
		this.name = name;
		this.code = code;
		this.category = category;
		this.size = size;
	}

	public final String getName()
	{
		return name;
	}
	public final void setName(String value)
	{
		name = value;
	}
	public final String getCode()
	{
		return code;
	}
	public final void setCode(String value)
	{
		code = value;
	}
	public final String getCategory()
	{
		return category;
	}
	public final void setCategory(String value)
	{
		category = value;
	}
	public final String getSize()
	{
		return size;
	}
	public final void setSize(String value)
	{
		size = value;
	}
}

public class Film extends Item
{
	protected String director;
	protected String mainActor, mainActress;

	public Film()
	{

	}
	public Film(String director, String mainActor, String mainActress)
	{
		this.director = director;
		this.mainActor = mainActor;
		this.mainActress = mainActress;
	}

	public final String getDirector()
	{
		return director;
	}
	public final void setDirector(String value)
	{
		director = value;
	}
	public final String getMainActor()
	{
		return mainActor;
	}
	public final void setMainActor(String value)
	{
		mainActor = value;
	}
	public final String getMainActress()
	{
		return mainActress;
	}
	public final void setMainActress(String value)
	{
		mainActress = value;
	}

	public final void Play()
	{

	}
	public final void RetrieveInformation()
	{

	}
}

public class Music extends Item
{
	protected String singer;
	protected int length;

	public Music()
	{

	}
	public Music(String singer, int length)
	{
		this.singer = singer;
		this.length = length;
	}

	public final String getSinger()
	{
		return singer;
	}
	public final void setSinger(String value)
	{
		singer = value;
	}
	public final int getLenght()
	{
		return length;
	}
	public final void setLenght(int value)
	{
		length = value;
	}

	public final void Play()
	{

	}
	public final void RetrieveInformation()
	{

	}
}
public class ComputerProgram extends Item
{

}

More Java Exercises of OOP More On Classes

 Array of objects: table
Create a class named "Table". It must have a constructor, indicating the width and height of the board. It will have a method "ShowData" which will wr...
 House
Create a class "House", with an attribute "area", a constructor that sets its value and a method "ShowData" to display "I am a house, my area is 200 m...
 Table + coffetable + array
Create a project named "Tables2", based on the "Tables" project. In it, create a class "CoffeeTable" that inherits from "Table". Its method "ShowDa...
 Encrypter
Create a class "Encrypter" to encrypt and decrypt text. It will have a "Encrypt" method, which will receive a string and return another string. It ...
 Complex numbers
A complex number has two parts: the real part and the imaginary part. In a number such as a+bi (2-3i, for example) the real part would be "a" (2) and ...
 Table + coffetable + leg
Extend the example of the tables and the coffee tables, to add a class "Leg" with a method "ShowData", which will write "I am a leg" and then it will ...
 Random number
Create a class RandomNumber, with three static methods: - GetFloat will return a number between 0 and 1 using the following algorithm: seed = (s...
 Text to HTML
Create a class "TextToHTML", which must be able to convert several texts entered by the user into a HTML sequence, like this one: Hola Soy yo Ya ...
 Class ScreenText
Create a class ScreenText, to display a certain text in specified screen coordinates. It must have a constructor which will receive X, Y and the strin...
 Enhanced ComplexNumber class
Improve the "ComplexNumber" class, so that it overloads the operators + and - to add and subtract numbers....
 3D point
Create a class "Point3D", to represent a point in 3-D space, with coordinates X, Y and Z. It must contain the following methods: MoveTo, which will...
 Catalog + Menu
Improve the Catalog program, so that "Main" displays a menu to allow entering new data of any kind, as well as displaying all the data stored....


Juan A. Ripoll - Programming Tutorials and Courses © 2024 All rights reserved.  Legal Conditions.