Skip to content

A bit more detail on that (or better, why) methods that implement interface methods have to be public even with the interface method is, say, internal. #44194

Open
@VesperGarment

Description

@VesperGarment

Type of issue

Typo

Description

Is it really the case that when an interface method is, say, marked internal, an implementation for that method must be public? This seems a bit startling and worth a bit more explanation - what if the reason the method is internal in the interface is that one of its argument types is internal? Then I actually can't implement it using a normal class method - it's required to be public by this rule but it can't be public because one of its argument types isn't public.

Page URL

https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/types/interfaces

Content source URL

https://github.com/dotnet/docs/blob/main/docs/csharp/fundamentals/types/interfaces.md

Document Version Independent Id

1f0a9a2b-6495-370d-620f-a6dabec7df3b

Article author

@BillWagner

Metadata

  • ID: d9fd340a-0f74-8602-28a1-9569296a5951
  • Service: dotnet-csharp
  • Sub-service: fundamentals

Related Issues

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions