Proposed exercise
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.
Output
Solution
using System;
namespace Catalog
{
class TestItem
{
static void Main()
{
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 string Name
{
get { return name; }
set { name = value; }
}
public string Code
{
get { return code; }
set { code = value; }
}
public string Category
{
get { return category; }
set { category = value; }
}
public string Size
{
get { return size; }
set { size = value; }
}
}
public class Film : 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 string Director
{
get { return director; }
set { director = value; }
}
public string MainActor
{
get { return mainActor; }
set { mainActor = value; }
}
public string MainActress
{
get { return mainActress; }
set { mainActress = value; }
}
public void Play()
{
}
public void RetrieveInformation()
{
}
}
public class Music : Item
{
protected string singer;
protected int length;
public Music()
{
}
public Music (string singer, int length)
{
this.singer = singer;
this.length = length;
}
public string Singer
{
get { return singer; }
set { singer = value; }
}
public int Lenght
{
get { return length; }
set { length = value; }
}
public void Play()
{
}
public void RetrieveInformation()
{
}
}
public class ComputerProgram : Item
{
}
}