forked from ahotko/c-sharp-code-examples
-
Notifications
You must be signed in to change notification settings - Fork 0
/
SampleExecute.cs
71 lines (61 loc) · 2.04 KB
/
SampleExecute.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
using System;
namespace CodeSamples
{
public abstract class SampleExecute : ISampleExecute
{
private void PopColors()
{
Console.ResetColor();
}
private void SetTitleColor()
{
Console.ForegroundColor = ConsoleColor.Green;
}
private void SetSectionColor()
{
Console.ForegroundColor = ConsoleColor.Yellow;
}
public void Title(string title)
{
SetTitleColor();
Console.WriteLine();
Console.WriteLine(title);
PopColors();
Console.WriteLine("============================================================");
}
public void Section(string title)
{
SetSectionColor();
Console.WriteLine(title);
PopColors();
Console.WriteLine("============================================================");
}
public void LineBreak()
{
Console.WriteLine("============================================================");
}
public void Finish()
{
Console.WriteLine("============================================================");
Console.WriteLine();
Console.WriteLine();
}
//from interface
//abstract methods MUST be implemented by derived class, because
//they do not have implementation in abstract class
public abstract void Execute();
//virtual methods do not have to be implemented by derived class, because
//they have implementation in abstract class; they can be overriden in derived
//class, if necessary
public virtual void ExecuteVirtual()
{
Console.WriteLine("Executing Virtual Method in abstract class");
}
//methods, that are not abstract or virtual, cannot be overriden in derived
//class
public void ExecuteNormal()
{
Console.WriteLine("Executing Method in abstract class");
}
}
}