我正在尝试完成此任务,但即使我相信我已经从SavingsAccount调用RecordCustomer()方法,但由于其保护级别,我收到的错误是它无法访问,但我正在摸不着头脑试图解决它。
class Customer
{
private List<SavingsAccount> _Accounts = new List<SavingsAccount>();
public ReadOnlyCollection<SavingsAccount> Accounts
{
get { return _Accounts.AsReadOnly(); }
}
public void AddAccount(SavingsAccount account)
{
if (_Accounts.Contains(account) == false)
{
_Accounts.Add(account);
account.RecordCustomer(this);
}
}
class SavingsAccount : Account
{
public void RecordCustomer(Customer customer)
{
if (_Accounts.Contains(customer) == true && _Owners.Contains(customer) == false)
_Owners.Add(customer);
}
}
由于
答案 0 :(得分:0)
您遇到的问题是该课程可能无法访问。默认情况下,C#类具有internal
的可访问性,这意味着如果您显示的两个类位于同一个程序集(即同一个项目)中,那么它将起作用。如果他们不在同一个程序集中,那么您需要进行SavingsAccount public
。