Должен ли я создавать отдельные свойства в классе или просто метод для установки значений? - PullRequest
0 голосов
/ 02 октября 2011

Я изучаю vb.net, и у меня возникают проблемы, когда я обдумываю следующее ...

Я могу создать несколько свойств пользовательского класса и получить / установить значения, или я могу создать метод, чтобы установить их все сразу. Если каждое свойство будет разрешать чтение и запись, я должен просто создать метод для одновременного присваивания значений? Я предполагаю, что мне не хватает очень важной части здесь. Пример:

Я могу создать 2 свойства:

    Public Class Employee
        Public Property LastName as string
        Get 
            Return strLastName
        End get

        Set(ByVal value as string)
            strLastName= value
        End Set
        End Property

        Public Property FirstName as string
        Get 
            Return strFirstName
        End get

        Set(ByVal value as string)
            strFirstName= value
        End Set
        End Property
    End Class

или я могу создать метод:

    Public Class Employee
        Public Sub AddEmployee(ByVal strLastName, ByVal strFirstName)
            LastName = strLastName
            FirstName = strFirstName
        End Sub
    End Class

Я прошу прощения за такой вопрос noob, но любое понимание очень ценится. спасибо!

Ответы [ 2 ]

2 голосов
/ 02 октября 2011

Нет причин не поддерживать оба свойства и метод, который устанавливает несколько свойств.

Обычно конструктор используется для создания экземпляра класса и для установки некоторых свойств.В VB, присвоение имени методу класса «New» определяет его как конструктор.В вашем примере, если вы переименуете свой метод AddEmployeee в New, у вас будет прекрасный конструктор.Затем ваша программа может создавать новые экземпляры как таковые:

Dim emp1 as New Employee("Burdell", "George") 
2 голосов
/ 02 октября 2011

Если у вас есть только один метод, у вас будет возможность использовать , даже если вы хотите изменить только значение поля single .

Кроме того, в таком методе, если вам нужно проверить входные данные, вам потребуется написать довольно много кода для проверки, который не относится ко всем полям.

Если значения должны обновляться вместе, используйте метод для их совместного обновления и не предоставляйте установщики.

Реальность вещей такова, что то, как это сделать, зависит от того, что вы моделируете в своем классе. Не существует жестких и быстрых правил, которые говорят, что свойства лучше методов или наоборот.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...