What is a strategy pattern? Implement it.

Answer Posted / 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



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

How do you trigger the paint event in system.drawing?

767


which method do you use to redirect the user to another page without performing a round trip to the client? How?

678


What is common type system (cts)?

753


Explain what rare the types of jit and what is econo-jit?

723


What tools can I use to develop .net applications?

755


How to prepare parametrized (with more than one parameters) crystal report.pls tell me the code procedure, if any body can?

750


What is .net technology?

801


Is there built-in support for tracing?

807


how can i create a table from front end to back end in wabe page?

1701


Explain what does managed mean in the .net context?

734


Compare client server application with n-tier application

715


Is .net a compiler?

733


Can you write a class without specifying namespace?

822


What versions of .net are there?

825


What is Entity Relationship Model in .NET?

819