Если вам нужно всего несколько переменных, вы можете передать переменную (и) в качестве параметра при инициализации Class2.
Public Class Class1
Public VariableX As Integer = 1
Public Class Class2
Public Sub New(ByVal VariableX As Integer)
'Here GET the value of VariableX
Debug.Print(VariableX)
End Sub
End Class
Public Sub New()
Dim cls2 As New Class2(VariableX)
End Sub
End Class
Таким образом, Class2 не имеет доступа ко всем переменным и свойствам Class1; только то, что вы явно даете. Обычно мы не хотим, чтобы дочерний класс контролировал родительский класс. Таким образом, этот метод обеспечивает такое разделение.