'Чтобы вызвать метод, реализованный в интерфейсе, необходимо привести экземпляр этого класса к типу интерфейса и вызвать нужный ме-цод — это самый распространенный подход. Хотя это работает и многие (включая и меня) используют эту методику, формально вы вовсе не обязаны приводить объект к реализованному им интерфейсу, чтобы вы-зывать методы этого интерфейса. Этот так, потому что методы интерфейса, реализованные классом, также являются открытыми методами Цасса. Взгляните на код на С#, особенно на метод
Main,
чтобы понять, что я имею в виду:
using System;
public interface IDataBound {
public class EditBox : IDataBound
{
// Реализация IDataBound. public void BindQ
{
Console.WriteLineC'Binding to data store...");
} }
class NameHidingUpp
{
II
Точка входа Main, public static void MainQ {
Console.WriteLine();
EditBox edit = new EditBox();
Console.WriteLine("Calling EditBox.Bind()...");
edit.BindO;
Console.WriteLine();