Instead of an unneeded abstract method, I'd rather get the same effect using
an internal constructor.

public class BaseClass
{
    internal BaseClass()
    {
    }
}

Jim Gunkel
Nevrona Designs

----- Original Message -----
From: "Ilya Ryzhenkov" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Saturday, April 10, 2004 2:27 AM
Subject: [ADVANCED-DOTNET] Public abstract classes with internal abstract
methods


> This was recently discovered locally, that it is allowed (without a
warning)
> to create class like this:
>
> public abstract class AbstractBase
> {
>         internal abstract void foo();
> }
>
> First, I thought it's a sort of bug. But after some thinking about the
> fact... This could be used to ensure all derived classes are in the same
> assembly, but base class is still usable from outside. Moreover, unlike
with
> interfaces, you ensure protocol and still don't allow anyone to implement
it
> outside of your package. Details here:
> http://www.silicontaiga.com/orangy/000032.html
>
> Any comments from the group?
>
> Sincerely yours, Ilya Ryzhenkov
>
> ===================================
> This list is hosted by DevelopMentorŪ  http://www.develop.com
> Some .NET courses you may be interested in:
>
> NEW! Guerrilla ASP.NET, 17 May 2004, in Los Angeles
> http://www.develop.com/courses/gaspdotnetls
>
> View archives and manage your subscription(s) at
http://discuss.develop.com
>

===================================
This list is hosted by DevelopMentorŪ  http://www.develop.com
Some .NET courses you may be interested in:

NEW! Guerrilla ASP.NET, 17 May 2004, in Los Angeles
http://www.develop.com/courses/gaspdotnetls

View archives and manage your subscription(s) at http://discuss.develop.com

Reply via email to