Если ваше намерение состоит в том, чтобы доступность методов зависела от того, какой конструктор вызывается, то они должны быть разными объектами.
Было бы лучше определить отдельные классы или исправитьоба ваших конструктора создают действительные объекты со всеми функциональными методами.
Если вы решите, что это действительно должен быть один класс, общий шаблон, который может помочь в этом, - это «цепочечные конструкторы», где ваш более простой конструктор вызывает более сложныйконструктор с соответствующими значениями по умолчанию для отсутствующих параметров.
Если, с другой стороны, вы решите использовать два класса, это может быть отношение наследования, причем более сложный класс расширяет более простой или можетразумно быть составным отношением, где более сложный класс содержит поле, являющееся объектом более простого класса, и делегирует некоторые функциональные возможности другому.
Более конкретный и определенный совет потребует просмотра некоторого кода (но неБолее 2000 строк)выпуск.