Это не имеет негативных последствий, а также означает, что если вы когда-нибудь решите сделать тип общедоступным, вам не нужно будет менять доступность ваших членов.
В основном для участника:
public означает, что член виден всем, кто может видеть Тип.
внутренний означает, что элемент виден только в текущей сборке, даже если тип является общедоступным.
Таким образом, ваш выбор будет основан на том, какой из них является наиболее подходящим. В целом, наиболее целесообразно сделать членов общедоступными (т.е. видимыми для любого, кто может видеть Type, т. Е. Частью общедоступного API Type). Вы сделаете члены внутренними по той же причине, по которой вы делаете члены внутренними в общедоступном классе - как правило, вспомогательные члены, которые должны быть видимы только для «дружественных» классов в одной сборке и не являются частью общедоступного API.
Кроме того, внутренний Тип может быть производным от открытого Типа, поэтому может наследовать и переопределять открытые члены. Имеет ли смысл разрешать переопределенным публичным членам, но не новым публичным членам?