Re: Factory method
- From: "Ollie Riches" <ollie.riches@xxxxxxxxxxxxxxxxx>
- Date: Fri, 22 Apr 2005 16:59:20 +0100
check out the definition here
http://www.dofactory.com/Patterns/PatternAbstract.aspx
--
HTH
Ollie Riches
http://www.phoneanalyser.net
Disclaimer: Opinions expressed in this forum are my own, and not
representative of my employer.
I do not answer questions on behalf of my employer. I'm just a programmer
helping programmers.
"Mark" <Mark@xxxxxxxxxxx> wrote in message
news:uQz4Cf0RFHA.2348@xxxxxxxxxxxxxxxxxxxxxxx
> I have an abstract class, and a set of classes that inherit from my
abstract
> class. The fact that it is abstract is likely irrelevant. I have a static
> factory method in my abstract class that creates subclasses. The
> constructor in my subclasses must be able to call the constructor in my
base
> class. For the factory method in my abstract class to call the
constructor
> on my subclasses, the constructor in the subclass MUST be public (or
> internal). They cannot be private or protected. However, doen't that
> basically defeat the purpose of factory? I'd love to be able to make all
> these constructors private or similar so that someone can't create
subclass
> instances without using the Factory. If this was all in a separate DLL, I
> suppose I'd be saved by "internal", but we have small team of developers
> working on projects where that type of seperation really shouldn't be
> necessary.
>
> Suggestions? Code sample below ...
>
> Thanks in advance.
>
> Mark
>
>
> public abstract class MyBase
> {
> protected string first;
>
> public MyBase(string first )
> {
> this.first = first;
> }
>
> public static MyBase Factory(int stateId)
> {
> switch (stateId)
> {
> case 700:
> return new MySubClass1(first);
> default:
> throw new Exception("Bogus code!");
> }
> }
> }
>
>
.
- References:
- Factory method
- From: Mark
- Factory method
- Prev by Date: RE: dataGrid Cell Value
- Next by Date: Book on differences between VB and C# .NET?
- Previous by thread: Re: Factory method
- Next by thread: RE: Factory method
- Index(es):
Relevant Pages
|