首页 > 解决方案 > 如何使用属于该类类型并使用另一个类调用的变量来调用在类下定义的变量?

问题描述

我已经定义了 2 个类。

class A
 {
    public B[] varA{get;set;}
 }

class B
{
  public string varB{get;set;}
}

我创建了一个 A 类对象作为 A newObj = new A(); 我需要使用此对象为 B 类中定义的变量赋值,但是

newObj.varA.varB

不管用。怎么称呼它?

标签: c#.netoop

解决方案


您正在访问所谓的空引用

创建对象后,

A newObj = new A();

newObj 的属性保持未初始化,该varA属性是空引用,直到您像这样初始化它

newObj.varA = new B[1]; //create an array that can hold one B instance and assign it to varA

不过,如果你访问数组中的第一个元素varA[0],你会发现它也是一个空引用!你也需要初始化它。

newObj.varA[0] = new B(); //create a B instance and put it to the array

然后您可以varB使用

newObj.varA[0].varB = "Hello World!"; 

推荐阅读