VB.net类和函数实例 - 最有效的方法

时间:2016-03-18 11:39:09

标签: vb.net function class instantiation

我想知道你们在这种情况下会做些什么。

我基本上是为Person返回一个数据集,但我想知道最有效的做事方式。

Public Class TestClass
    Public Shared Function returnPersonData() As Person
        Dim p As New Person
        p.Address = "Here and there"
        p.Name = "Mike"
        p.Career = "Pilot"
        Return p
    End Function
End Class

人员类:

Public Class Person
    Public Property Name As String
    Public Property Address As String
    Public Property Career As String
End Class

然后我会在另一个类中执行此操作来获取名称:

Dim name As String = TestClass.returnPersonData.Name
Dim address As String = TestClass.returnPersonData.Address

我的问题是:为什么每次我需要提取信息的名称,地址和职业时它会重新运行returnPersonData函数?为什么我不能只调用一次该函数,将其保存在数据集中,然后只引用它?

1 个答案:

答案 0 :(得分:5)

因为你打电话两次......

Dim name As String = TestClass.returnPersonData.Name ' <--- One time here
Dim address As String = TestClass.returnPersonData.Address ' <--- An other time here

保存人员类实例

Dim currentPerson As Person = TestClass.returnPersonData

然后您可以使用

获取姓名或地址
Dim name As String = currentPerson.Name
Dim address As String = currentPerson.Address

你可以删除这两个变量,并且一直只使用currentPerson。