abstract class periodical {
public abstract void prelim();
public abstract void midterms();
public interface period {
class semester1: periodical {
public override void prelim() {
Console.WriteLine("Prelims");
public override void midterms() {
Console.WriteLine("Midterms");
public void prefinals() {
Console.WriteLine("Pre-finals");
Console.WriteLine("Finals");
public static void Main()
periodical a = new semester1();
period b = new semester2();