调用带有对象的方法时发生未处理的异常'System.NullReferenceException'

时间:2016-05-16 02:25:43

标签: c# visual-studio class object methods

我正在尝试从Program.cs中的Reactivo类调用一个方法,并将数组作为参数。

这是从Program:

调用Reactivo的代码
    class Program
    {
        static Reactivo r = new Reactivo();

        const int M = 5;
        static Reactivo[] arreglo = new Reactivo[M];

        static void Main(string[] args)
        {
            for (int i = 0; i < M; i++)
            {
               r.ConstructorPorOmision(arreglo[i]);
            }
        }
    }

这是方法Imprimir(),带有Reactivo类:

    class Reactivo
    {
        public String color = "";
        public String simbolo = "";
        public int peso = 0;
        public int componentes = 0;

        public void ConstructorPorOmision(Reactivo r)
        {   
            Console.Write("\nValor tipo cadena para el atributo \"simbolo\":\t");
            r.simbolo = Console.ReadLine();
            Console.Write("\nValor tipo cadena para el atributo \"color\":\t");
            r.color = Console.ReadLine();
            Console.Write("\nValor tipo entero para el atributo \"peso\":\t");
            r.peso = Convert.ToInt16(Console.ReadLine());
            do
            {
                if (componentes < 5 || componentes > 25)
                {
                    Console.Write("\nEscribe un valor entre 5 y 25 para componentes");
                 }

                Console.Write("\nValor tipo entero para el atributo \"componentes\":\t");
                r.componentes = Convert.ToInt16(Console.ReadLine());

            } while (componentes < 5 || componentes > 25);

            Console.Write("\nLos valores han sido leidos correctamente.\n");
        }
    }

但是,当我尝试运行控制台应用程序时,我收到错误:

ConsoleApplication1.exe中出现未处理的“System.NullReferenceException”类型异常

我检查了我的代码中的冗余(例如,在这种方法中调用方法)但我找不到。什么似乎是问题?我该如何解决异常?

0 个答案:

没有答案