从属性调用类方法时,REALBasic / Xojo NilObjectException

时间:2013-12-18 21:50:59

标签: oop realbasic xojo

我正在编写一个用于基于UDP的聊天的控制台应用程序。

我有一个名为App的类,其Super是ConsoleApplication(“主”类)和一个UDP为EasyUDPSocket的UDPInterface类。在App类中,有一个名为UDP的属性,其类型为UDPInterface(UDP As UDPInterface)。在Run事件处理程序中,有以下代码:

StdOut.WriteLine(UDP.GetIP)

UDPInterface的方法GetIP由以下代码组成(返回类型为String):

return LocalAddress

LocalAddress是一种EasyUDPSocket方法,只需检索内部IP。

我遇到的问题是当我调用UDP.GetIP时,程序返回NilObjectException。我需要使用UDPInterface类作为属性,因此它的属性在App中的所有方法中都是相同的。

1 个答案:

答案 0 :(得分:3)

在使用之前,必须使用 New 关键字对象进行实例化。尚未实例化的对象将始终为Nil,并且使用Nil对象将始终引发NilObjectException

UDP = New UDPInterface
StdOut.WriteLine(UDP.GetIP)