Compiler Error CS0737

'type name' does not implement interface member 'member name'. 'method name' cannot implement an interface member because it is not public.

A method that implements an interface member must have public accessibility. All interface members are public.

To correct this error

  • Add the public access modifier to the method.

Example

The following code generates CS0737:

// cs0737.cs
interface ITest
{
    int Return42();
}

struct Struct1 : ITest // CS0737
{
    // Default access of private with no modifier.
    int Return42() { return (42); }

    // Try the following line instead.
    //public int Return42() { return (42); }
}

public class Test
{
    public static int Main(string[] args)
    {
        Struct1 s1 = new Struct1();
        Console.WriteLine(s1.Return42());
        return (1);
    }
}

See Also

Reference

Interfaces (C# Programming Guide)