Необходимо написать программу на языке высокого уровня (например, Java). В программе создаются два класса. Первый класс зависит от варианта выполнения работы. В этом классе необходимо создать: 1) переменные экземпляра (в соответствии с вариантом), каждая со спецификатором доступа private; 2) три конструктора: а) без параметров (при создании нового объекта с помощью этого конструктора устанавливаются значения переменных экземпляра по умолчанию); б) с тремя параметрами (при создании нового объекта с помощью этого конструктора устанавливаются значения переменных экземпляра в соответствии со значением каждого из параметров); в) с объектом в качестве параметра (при создании нового объекта с помощью этого конструктора устанавливаются значения переменных экземпляра в соответствии со значением каждой из переменных экземпляра объекта, являющегося параметром); 3) метод show (со спецификатором доступа public), обеспечивающий вывод на экран значений всех переменных экземпляра в удобном виде; 4) методы-селекторы (со спецификатором доступа public), обеспечивающие получение значения каждой из переменных экземпляра; 5) статическую переменную (со спецификатором доступа отвечающую за количество созданных объектов этого класса (то есть, в каждом конструкторе класса эта переменная будет увеличиваться на 1); 6) статический метод (со спецификатором доступа public), выводящий на экран количество созданных объектов этого класса. Второй класс содержит метод main() и предназначен для демонстрации работы с объектами первого класса. В методе main() должно производиться следующее: 1) Создается массив объектов первого класса. Количество объектов и значения переменных экземпляра каждого объекта пользователь вводит с клавиатуры. 2) Выводится на экран количество созданных объектов с использованием соответствующего статического метода. 3) С помощью метода show() выводится информация обо всех объектах. 4) С помощью метода show() выводится информация об объектах, удовлетворяющих первому условию (в соответствии с вариантом). Если таких объектов нет, то выводится соответствующее сообщение. 5) С помощью метода show() выводится информация об объектах, удовлетворяющих второму условию (в соответствии с вариантом). Если таких объектов нет, то выводится соответствующее сообщение. Класс «Адрес». Переменные экземпляра: – название улицы (строковый тип) – номер дома (целый тип) – номер квартиры (целый тип) Необходимо вывести на экран перечень адресов, у которых: 1) номер дома четный или номер квартиры меньше 30; 2) название улицы не начинается на букву «П» и «Т». Необходимо сделать так, как написано в методичке, вариант 14.