1

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

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

StdOut.WriteLine(UDP.GetIP)

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

return LocalAddress

LocalAddress 是一个 EasyUDPSocket 方法,它只是检索内部 IP。

我遇到的问题是,当我调用 UDP.GetIP 时,程序返回 NilObjectException。我需要将 UDPInterface 类用作属性,以便它的属性在 App 内的所有方法中都一样。

4

1 回答 1

3

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

UDP = New UDPInterface
StdOut.WriteLine(UDP.GetIP)
于 2013-12-18T22:18:25.493 回答