C#创建静态对象列表

时间:2018-10-14 10:27:02

标签: c#

我在创建静态对象列表时遇到问题... 我已经创建

bootstrap.min.css

并在此类内声明了列表。 但是,我如何访问或将内容放入列表。 (我正在创建餐厅菜单,现在正在尝试制作购物车)

3 个答案:

答案 0 :(得分:0)

通过在同一个类型内创建一个类型为静态成员的类型列表确实很难理解(并猜测)您想要实现什么,但是关于如何创建和访问它的问题的答案是:< / p>

public class Program
{
    public static void Main()
    {
        var myNewInstance = new KrepselisClass();
        KrepselisClass.KrepselisList.Add(myNewInstance);

        // OR

        KrepselisClass.KrepselisList.Add(new KrepselisClass());
    }
}

public class KrepselisClass
{
    public static List<KrepselisClass> KrepselisList = new List<KrepselisClass>();
}

请在此处查看代码示例:https://dotnetfiddle.net/Gwa7aI

但是在创建带有静态类和成员的新系统之前,我建议您看一下这个答案,我真的很喜欢:https://stackoverflow.com/a/241372/4537762

答案 1 :(得分:0)

我不明白为什么要在此类内创建一个静态列表,但是我确信应该有一个重要的原因。

首先,您应该知道何时使用static关键字。 在类中使用static关键字声明某些内容时,可以直接从该特定类访问它们,而无需创建对象。

public class Program
{
    public static void Main()
    {      
         KrepselisClass.KrepselisList.Add(new KrepselisClass());
    }
}

public class KrepselisClass
{
    public static List<KrepselisClass> KrepselisList = new List<KrepselisClass>();
}

正如您在上面的主要方法中看到的那样,我直接使用了列表,而没有创建 KrepselisClass 的对象。

由于我不明白您要做什么,所以这就是我要说的。 这应该可以解决您的大部分问题

请参考这些链接以明确说明。

https://theburningmonk.com/2010/07/static-vs-non-static-method-in-csharp/

https://softwareengineering.stackexchange.com/questions/163457/understanding-the-static-keyword

https://www.sitesbay.com/java/java-static-keyword

答案 2 :(得分:0)

我正在尝试完成购物车类型的事情。因此,我需要列出可以在整个程序中使用的列表,因为我将在一个窗口中显示项目菜单,在另一个窗口中显示购物车。

p.s。 我已经搜索了公共列表,但得到了静态列表,因此我不尝试使用它,因为我不了解它。