У меня есть класс, CustomerNew
и интерфейс ICustomer
:
public class CustomerNew : ICustomer
{
public void A()
{
MessageBox.Show("Class method");
}
void ICustomer.A()
{
MessageBox.Show("Interface method");
}
public void B()
{
MessageBox.Show("Class Method");
}
}
public interface ICustomer
{
void A();
}
Я очень смущен между этими двумя кодами строк.
ICustomer objnew = new CustomerNew();
CustomerNew objCustomerNew = new CustomerNew();
objnew.B(); // Why this is wrong?
objCustomerNew.B(); // This is correct because we are using object of class
Первая строка кода означает, что мы передаем ссылку на объект класса CustomerNew в objnew
, правильно ли? Если да, то почему я не могу получить доступ к методу B() класса с interface objnew
?
Может кто-нибудь объяснить эти два в деталях.