我很好奇这是否可能,如果不可以,那么背后有什么原因,以及如何处理这种编程场景?是否可以访问接口类型的其他成员?
比方说,我有这样的接口:
public interface IBook
{
void BookClient();
void CancelClient();
}
,我有这个类实现上述接口:如果我这个类在我的代码某处指定的接口类型
public class Photographer : IBook
{
public void BookClient()
{
// do something
}
public void CancelClient()
{
// do something
}
// non-interface methods
public void SaveClients()
{
// do something
}
public void DeleteClients()
{
// do something
}
}
现在如:
IBook photo;
photo = new Photographer();
是否可以这样做:
// non-interface member from the Photographer class
photo.SaveClients();
有人可以理顺我在这个问题上,也许指向我在这个正确的方向。谢谢。
使用反射,当然,或者如果你知道'photo'是一个'Photographer'你可以投它。 –
SaveClients是从摄影师不是IBook的方法,如果你'摄影师照片=新的摄影师'你可以访问'photo.SaveClients()' – wudzik
只是试着去做:) –