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 |
Should I implement finalize on my class? Should I implement idisposable?
What makes .net core cross platform?
What is Finalizer in .NET define Dispose and Finalize ?
How to create properties and methods using controls?
What are the different types of memory in .net?
What is loosely coupled solution in.net?
Name the classes that are introduced in the system.numerics namespace.
Is string a value type or a reference type?
What is .net and .net framework?
Explain what is reflection in microsoft .net context?
Explain me what is encapsulation?
Differences between namespace, class, assembly?