Хм.
См. Здесь: Модификаторы доступа .
В двух словах:
Public дает метод или тип полной видимости из других типов / классов.
Private разрешает только типу, содержащему приватный метод / переменную, доступ к приватному методу / переменной (обратите внимание, что вложенные классы также имеют доступ к содержащим классам приватных методов / переменных).
Защищенный аналогичен частному, за исключением того, что производные классы также могут получать доступ к защищенным методам.
«Ничего» VB.NET эквивалентно нулю. Хотя если вы имеете в виду «ничего», означающее «нет модификатора доступа», то это зависит, хотя очень грубое практическое правило (безусловно, в C #) заключается в том, что если вы не укажете явно модификатор доступа, метод / переменная объявление, как правило, ограничено , насколько это возможно.
т.е.
public class MyClass
{
string s = "";
}
фактически совпадает с:
public class MyClass
{
private string s = "";
}
Связанная статья MSDN предложит полное описание, когда явно не указан модификатор доступа.