What is a strategy pattern? Implement it.
Answer / guest
Strategy pattern is one of the 23 design patterns
available. The basic concept of strategy pattern is object
composition at runtime. When you have multiple classes each
having similar behaviour but the behaviour could change
based on an external factor or the object itself. For
example take a car, a car can have an engine, a steering
wheel, 4 tyres e.t.c but a remote control car will not have
an engine but will have the other characteristics of a
normal car. For this case let us have the following code:
Interface HasEngine
{
void Engine();
}
Interface Tyres
{
void 4Tyres();
}
class Hummer:HasEngine,Tyres
{
override void Engine()
{
Console.WriteLine("Has Engine");
}
override void 4Tyres()
{
Console.WriteLine("Has 4 tyres");
}
}
class RemoteCar:HasEngine,Tyres
{
override void Engine()
{
Console.WriteLine("Has no Engine");
}
override void 4Tyres()
{
Console.WriteLine("Has 4 tyres");
}
}
class Car
{
HasEngine HE;
Tyres T;
setEngine(HasEngine obj)
{
HE=obj;
}
setTyres(Tyres obj)
{
T=obj;
}
}
class MainClass:Car
{
HasEngine he;
Tyres tyr;
setInstance()
{
he = new Hummer();
tyr = new Hummer();
}
public static void Main()
{
MainClass mc = new Car();
mc.setInstance();
mc.setEngine(he);
mc.setTyres(tyr);
}
}
| Is This Answer Correct ? | 1 Yes | 1 No |
Explain webfarm vs webgardens in .net?
Difference between value type & reference types ?
What is the use of common language runtime?
What is the use of ErrorProvider Control in .NET?
What is equivalent for regsvr32 exe in .net ?
Explain can 2 different applications use the same dll in gac at the same time?
How to Create and Consume a Web Service?
Do you know what are three common acronyms used in .net, and what do they stand for?
How boxing and unboxing occures in memory?
How to load a user control dynamically in runtime?
What is .net latest version?
How to produce an assembly?