Что будет выведено в консоль?
publicclassMain(publicstaticvoidmain(String() args) (
Box<Integer> integerBox = new Box<>(15):|
Number number = integerBox.getContents): // строка 4|
System.out.printin(number getClass0.getSimpleName()):
publicclassBox<T>(private T contents:
public Box(T contents) {
this.contents = contents;
public T getContents) (
return contents:
public void setContents(T contents) ‹|
this.contents = contents;
Другие предметы Колледж Обобщения (Generics) программирование на Java вывод в консоль Java типы данных Java generics в Java классы и объекты Java колледж программирования основы Java методы в Java работа с классами Java Java для студентов Новый
Давайте разберем представленный код на Java и выясним, что будет выведено в консоль. Прежде всего, обратим внимание на несколько ошибок в синтаксисе, которые необходимо исправить, чтобы код компилировался и выполнялся корректно.
Вот исправленный вариант вашего кода:
public class Main { public static void main(String[] args) { BoxintegerBox = new Box<>(15); Number number = integerBox.getContents(); System.out.println(number.getClass().getSimpleName()); } } public class Box { private T contents; public Box(T contents) { this.contents = contents; } public T getContents() { return contents; } public void setContents(T contents) { this.contents = contents; } }
Теперь давайте шаг за шагом разберем, что делает этот код:
main
, который является точкой входа в программу.integerBox
класса Box
, который будет хранить значение 15
. Параметр типа Integer
указывает, что содержимое будет целым числом.getContents
для integerBox
, который возвращает значение 15
. Это значение присваивается переменной number
типа Number
.System.out.println
для вывода имени класса переменной number
на консоль. Метод getClass()
возвращает объект Class
, представляющий класс объекта, а метод getSimpleName()
возвращает имя класса в виде строки.Так как number
содержит значение типа Integer
, то в результате выполнения number.getClass().getSimpleName()
будет возвращено имя класса Integer
.
Итак, в консоль будет выведено: Integer