स्पष्ट रूप से कार्यान्वित करते समय मुझे interface
स्पष्ट रूप से कार्यान्वित करने के लिए कक्षा पर public
विधि बनाने के दौरान यह त्रुटि मिल रही है। मेरे पास एक कार्यवाही है: PrintName
विधि के स्पष्ट कार्यान्वयन को हटाकर। लेकिन मुझे आश्चर्य है कि मुझे यह त्रुटि क्यों मिल रही है।संकलन त्रुटि: "संशोधक 'सार्वजनिक' इस आइटम के लिए मान्य नहीं है" जबकि इंटरफ़ेस
क्या कोई भी त्रुटि समझा सकता है? लाइब्रेरी के लिए
कोड:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Test.Lib1
{
public class Customer : i1
{
public string i1.PrintName() //Error Here...
{
return this.GetType().Name + " called from interface i1";
}
}
public interface i1
{
string PrintName();
}
interface i2
{
string PrintName();
}
}
कंसोल के लिए कोड का परीक्षण आवेदन:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Test.Lib1;
namespace ca1.Test
{
class Program
{
static void Main(string[] args)
{
Customer customer = new Customer();
Console.WriteLine(customer.PrintName());
//i1 i1o = new Customer();
//Console.WriteLine(i1o.printname());
//i2 i2o = new Customer();
//Console.WriteLine(i2o.printname());
}
}
}
(सी 1 के रूप में) एम।(); // कोई समस्या नहीं यह सही है, लेकिन अगर आप गधे के बाहर विधि एम तक पहुंचना चाहते हैं, तो यह सुलभ नहीं है? – Lalit
@ ललित, यह हर जगह सुलभ है I1 सुलभ है। अन्य विधानसभाओं में भी। –
इंटरफ़ेस I1 आक्रामक रूप से बाहर पहुंच योग्य है लेकिन कक्षा सी के लिए विधि एम बाहरी पहुंच योग्य नहीं है, क्लास ब्राउज़र की जांच करें और साथ ही इसे निजी के रूप में चिह्नित किया गया है। – Lalit