我正试图从另一个类中访问一个列表“newklädDataList”,方法是将一个对象从类中取出并访问一个公共方法,我已经实现了返回列表“newklädDataList”,但它不起作用;这有什么不对?
这是我的列表所在的类:
public class klädDATALIST //Kläddata sparas här
{
private static List<klädDATALIST> newklädDataList = new List<klädDATALIST>(); // Lista med klädegenskaper
public List<klädDATALIST> GetList() // Metod för att hämta lista
{
return newklädDataList;
}
public string märke;
public string typ;
public string färg;
public string storlek;
public klädDATALIST(string _märke, string _typ, string _färg, string _storlek) //Överlagrad konstruktor
{
this.märke = _märke;
this.typ = _typ;
this.färg = _färg;
this.storlek = _storlek;
}
}
这是我尝试访问它的类和方法:
public class menuVAL //Val av menu sker inom denna klass
{
//public static List<klädDATALIST> newklädDataList = new List<klädDATALIST>();
klädDATALIST h = new klädDATALIST();
public void GetList()
{
List<klädDATALIST> newklädDataList = h.GetList();
}
public static void laddaBASgarderob()
{
StreamReader infil = new StreamReader("BasGarderob.txt");
string line;
while ((line = infil.ReadLine()) != null)
{
string[] plagg = line.Split('\t');
newklädDataList.Add(new klädDATALIST(plagg[0], plagg[1], plagg[2], plagg[3]));
}
infil.Close();
}
}
感谢您的时间!
答案 0 :(得分:1)
你的班级设计是“有趣的”,但无论如何,你可能做错了就是这样称呼:
klädDATALIST h = new klädDATALIST();
当你在klädDATALISTclass上没有无参数构造函数时。
因此要么实现无参数构造函数:
public klädDATALIST() {}
或使GetList静态:
public static List<klädDATALIST> GetList() // Metod för att hämta lista
并在menuVAL.GetList中调用它:
List<klädDATALIST> newklädDataList = klädDATALIST.GetList();