Давайте пройдемся по выполнению программы, шаг за шагом. Сначала вы инициализируете некоторые переменные, а затем создаете объект Scanner. Затем вы вводите цикл while
. Внутри цикла while вы отображаете главное меню, читаете ввод с клавиатуры, создаете новый объект Circle , а затем обрабатывает полученный вами ввод. И вы продолжаете делать это до тех пор, пока flag
не будет установлено на false
, и в этом случае программа завершится.
Заметили здесь что-нибудь странное?
Переменная существует только внутри области, в которой она была объявлена, а ваш объект Circle был объявлен внутри цикла while. Помните, что тело цикла while представляет одну итерацию цикла while . Итак, по сути, ваш объект Circle снова и снова создается заново, поэтому setRadius()
не имеет никакого эффекта.