>An interface would be the simplest way to accomplish what you are looking for. All you need is the interface definition:
>
>Public Interface IParser
> Function ParserGetContent(ByVal tnPrimaryKey As Integer) As String
>End Interface
>
>Then in your base class, add
Implements IParser
after the class definition, and change the type of oOriginator to IParser. Your existing classes would inherit the interface from the base class, and you can add the interface to any new classes that also need that method.
I may have mis-understood Michels requirements but I don't see how an interface would help. In the scenario he gave which classes should implement IParser?
It would be useful if he wanted to use a class that was not based on the Parser class to implement the ParseGetContent() method - but that is not the case. He wants to override the behaviour of ParseGetContent() in an existing instance of Parser (or one of its derived classes)
But question for Michel: If the GetPage() method knows which behaviour of ParseGetContent() should be used why not just instantiate the relevant sub-class to do the work ?