2010-07-19 14 views

Respuesta

41

No está seguro de lo que quiere decir con "constructor de la clase", pero me gustaría que te refieres a uno de los de abajo.

Instancia constructor:

Public Sub New() 

End Sub 

constructor compartido:

Shared Sub New() 

End Sub 
+0

El constructor de clase es un término VB 6 para un constructor de instancia. Por desgracia, también es un término OOP para lo que llamas un constructor compartido. –

+0

@Jonathan: Gracias, sabía que era un término ambiguo, pero no estaba seguro de qué significaba dónde. Por cierto, su respuesta es un poco incorrecta en el sentido de que un constructor 'Compartido' no puede ser' Public'. –

+0

Uf, eso es lo que obtengo por escribir demasiado rápido. –

0

Es importante recordar que solo puede llamar a los métodos de una instancia de la clase cuando es pública. Si el método es Privado, solo los métodos dentro de la misma clase pueden llamarlo.

2

Supongamos que su clase se llama MyStudent. Así es como se define el constructor de la clase:

Public Class MyStudent 
    Public StudentId As Integer 

    'Here's the class constructor: 
    Public Sub New(newStudentId As Integer) 
     StudentId = newStudentId 
    End Sub 
End Class 

Así es como se llame:

Dim student As New MyStudent(studentId)

Por supuesto, el constructor de la clase puede contener tantos o tan pocos argumentos que necesite - incluso ninguno, en cuyo caso deja los paréntesis vacíos. También puede tener varios constructores para la misma clase, todos con diferentes combinaciones de argumentos. Estas se conocen como diferentes "firmas" para el constructor de su clase.

Cuestiones relacionadas