Второй способ – Imports
И все же хотелось бы быть еще лаконичнее. Оператор Imports позволяет опускать имена не только пространств имен, но и объектов, в них входящих: классов, модулей (не путать с абсолютной величиной), структур, перечислений. Поставим задачу опустить в нашей программе имена классов Debug и Math. Для этого самой верхней строкой в окне кода вы должны записать оператор Imports:
Imports System.Diagnostics.Debug , System.Math
После слова Imports через запятую перечисляются имена объектов (в нашем случае классов Debug и Math) с обязательным указанием пространств имен, в которые они входят. Вот как теперь будет выглядеть наше окно кода (для краткости я оставил в процедуре только две строки):
Imports
System.Diagnostics.Debug, System.Math
Public Class Form1
Inherits System.Windows.Forms.Form
Windows Form Designer generated code
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
WriteLine(3 + 2)
WriteLine(Abs(-20))
End Sub
End Class
Как видите, теперь вместо Debug.WriteLine вы можете писать WriteLine, а вместо Math.Abs – просто Abs.
А как же теперь с двусмысленностями, когда объекты с одинаковыми именами входят в разные пространства имен? В этом случае отказывайтесь от Imports или пользуйтесь его дополнительными возможностями, на которых я не останавливаюсь.
В дальнейшем я буду писать фрагменты программ, где опуская, а где не опуская имена объектов. Там, где имена опущены, подразумевается, что использован соответствующий оператор Imports.