【发布时间】:2010-11-27 03:29:29
【问题描述】:
我在课堂上创建了以下内容
private List<CreditCardTransaction> _ccTransactions = new List<CreditCardTransaction>();
public List<CreditCardTransaction> ccTransactions
{
get { return _ccTransactions; }
set { _ccTransactions = value; }
}
在另一个公共函数中(在同一个类中),我尝试使用以下代码向列表中添加一个值:
_ccTransactions.Add(new CreditCardTransaction(Convert.ToString(items[0]), Convert.ToString(items[1]), Convert.ToDouble(items[2]), DateTime.Parse(items[3])));
但是“_ccTransactions”下面的红色波浪线表示
错误 1 非静态字段、方法或属性“CreditCardTransactionKeeper.CreditCardTransaction._ccTransactions”需要对象引用
当我在定义此列表的类的方法中时,向列表中添加新项目的正确方法是什么?
【问题讨论】:
-
@Philip Rieck 是绝对正确的。但是,为什么静态方法不能访问实例变量有意义吗?
-
@Esteban Araya:是的,这是有道理的。静态方法属于整个类,而不是它的特定实例,所以就静态方法而言,由于没有可访问的实例,因此不可能有任何实例变量。
-
@Anna Lear:我认为 Esteban 是在问原始发帖人。他需要了解行为背后的逻辑才能得到真正完整的答案。