Section C 2022
This section is to document the skeleton program. Section C will be questions relating to the actual code within the program and could relate to specific methods, variables, programming skills, or theory topics.
Execution
The 'static void Main' in the class of program will always be the first block of code executed.
The line:
Breakthrough ThisGame = new Breakthrough();
Declares and instantiates an object of 'Breakthrough', this will cause the constructor method of the 'Breakthrough' class to be run. The code for the constructor is below:
public Breakthrough()
{
Deck = new CardCollection("DECK");
Hand = new CardCollection("HAND");
Sequence = new CardCollection("SEQUENCE");
Discard = new CardCollection("DISCARD");
Score = 0;
LoadLocks();
}
The 'CardCollection' objects ('Deck','Hand','Sequence' & 'Discard') are already declared, but the use of 'new CardCollection' will instantiate them and will cause the constructor method of 'CardCollection' to run for each object. The constructor method for the 'CardCollection' class is:
public CardCollection(string n)
{
Name = n;
}
As you can see, this calls the 'LoadLocks' method of the 'Breakthrough' class. The 'LoadLocks' method will execute and doesn't make any other called to other methods.
So back to the 'static void Main' and this line:
ThisGame.PlayGame();
This calls the 'PlayGame' method of the 'Breakthrough' object.
Classes
The skeleton program has the following classes:
Question Help
- Private vs Protected
- Virtual & Override
- About 'Inheritance' & Polymorphism'
- About the use of 'this'
- About the use of 'base'
- Constructors
- Static
- Lists