我想在基类中放置一个方法,以免在继承的类中重复该方法。有用于基类和继承的类的接口。创建继承的类对象后,将无法使用要使用的基类方法。 ??怎么了?
谢谢。
public interface IRepository
{
string GetError(string LogNumber);
}
public class Repository : IRepository
{
public Repository()
{
}
public string GetError(string LogNumber)
{
return "The error is " + LogNumber;
}
}
public interface ICustomerRepository
{
// READ
List<Customer> ReadAll();
}
public class CustomerRepository : Repository, ICustomerRepository
{
public CustomerRepository() : base()
{
}
public List<Customer> ReadAll()
{
return fooFunction();
}
}
CustomerRepository myRepository = new CustomerRepository()
myRepository.
答案 0 :(得分:0)
您是否要将这些语句放在课堂之外?如果是,则应将它们放在方法内,最好放在main方法内。 另外,在对象初始化结束时缺少分号。
“ CustomerRepository myRepository =新的CustomerRepository() ;
myRepository。”
尝试更正,您将可以从基类访问该方法。
答案 1 :(得分:0)
我认为您的代码工作正常。请检查以下解决方案
public Form1()
{
InitializeComponent();
CustomerRepository myRepository = new CustomerRepository();
myRepository.GetError("string error");
}
public interface IRepository
{
string GetError(string LogNumber);
}
public class Repository : IRepository
{
public Repository()
{
}
public string GetError(string LogNumber)
{
return "The error is " + LogNumber;
}
}
public interface ICustomerRepository
{
// READ
List<Customer> ReadAll();
}
public class CustomerRepository : Repository, ICustomerRepository
{
public CustomerRepository() : base()
{
}
public List<Customer> ReadAll()
{
List<Customer> list;
return list = new List<Customer>();
}
}
public class Customer
{
}