Тимур Сергеевич Машнин - Объектно-ориентированное программирование на Java. Платформа Java SE
Название: | Объектно-ориентированное программирование на Java. Платформа Java SE | |
Автор: | Тимур Сергеевич Машнин | |
Жанр: | Java, Java Script | |
Изадано в серии: | неизвестно | |
Издательство: | Издательские решения | |
Год издания: | - | |
ISBN: | 978-5-00-503960-6 | |
Отзывы: | Комментировать | |
Рейтинг: | ||
Поделись книгой с друзьями! Помощь сайту: донат на оплату сервера |
Краткое содержание книги "Объектно-ориентированное программирование на Java. Платформа Java SE"
Эта книга предназначена для тех, кто хочет научиться программировать на языке Java.С этой книгой вы обучитесь объектно-ориентированному программированию на платформе Java SE и научитесь применять принципы ООП на практике.Эта книга охватывает важные аспекты программирования на языке Java, начиная с основ и заканчивая объектно-ориентированным подходом и командной разработкой кода.
Читаем онлайн "Объектно-ориентированное программирование на Java. Платформа Java SE". [Страница - 77]
верхняя граница типа.
266
Т. Машнин. «Объектно-ориентированное программирование на Java. Платформа Java SE»
Если в такой метод передать, например, строку, возникнет ошибка компиляции.
Также параметр типа может иметь несколько границ.
Знак вопроса определяет подстановку верхней границы типа.
В данном случае знак вопроса указывает, что Foo – это любой тип, который соответствует
Foo и любому подтипу Foo.
Если просто указать знак вопроса в угловых скобках как параметр типа, это будет означать тип Object.
Также как мы определили верхнее ограничение, можно определить нижнее ограничение
типа.
Нижнее ограничение, с помощью знака вопроса и ключевого слова супер, ограничивает
неизвестный тип конкретным типом или супер-типом этого типа.
267
Т. Машнин. «Объектно-ориентированное программирование на Java. Платформа Java SE»
рами.
Здесь параметр типа ограничен от класса Integer и выше.
Используя параметризованные типы, нужно быть осторожными с логическими операто-
Например, нельзя применять такие простые операторы сравнения, как больше, меньше
или равно, так как они применяются к примитивным типам.
В случае дженериков нужно применять специальные методы equal и compareTo.
Теперь, предположим, у нас есть класс Box .
Можем ли мы использовать объявление Box .
Хотя класс Integer является подклассом класса Number, мы не можем использовать объявление Box , так как сам класс Box не является подклассом класса Box
.
Хотя при этом мы можем передавать в параметризованные методы класса Box
объекты типа Integer.
Однако если использовать ограничение типа, это становится возможным.
Поскольку здесь одно ограничение вписывается в другое ограничение.
268
Т. Машнин. «Объектно-ориентированное программирование на Java. Платформа Java SE»
Рассмотрим другой пример.
Так как List является подтипом List --">
266
Т. Машнин. «Объектно-ориентированное программирование на Java. Платформа Java SE»
Если в такой метод передать, например, строку, возникнет ошибка компиляции.
Также параметр типа может иметь несколько границ.
Знак вопроса определяет подстановку верхней границы типа.
В данном случае знак вопроса указывает, что Foo – это любой тип, который соответствует
Foo и любому подтипу Foo.
Если просто указать знак вопроса в угловых скобках как параметр типа, это будет означать тип Object.
Также как мы определили верхнее ограничение, можно определить нижнее ограничение
типа.
Нижнее ограничение, с помощью знака вопроса и ключевого слова супер, ограничивает
неизвестный тип конкретным типом или супер-типом этого типа.
267
Т. Машнин. «Объектно-ориентированное программирование на Java. Платформа Java SE»
рами.
Здесь параметр типа ограничен от класса Integer и выше.
Используя параметризованные типы, нужно быть осторожными с логическими операто-
Например, нельзя применять такие простые операторы сравнения, как больше, меньше
или равно, так как они применяются к примитивным типам.
В случае дженериков нужно применять специальные методы equal и compareTo.
Теперь, предположим, у нас есть класс Box .
Можем ли мы использовать объявление Box .
Хотя класс Integer является подклассом класса Number, мы не можем использовать объявление Box , так как сам класс Box не является подклассом класса Box
.
Хотя при этом мы можем передавать в параметризованные методы класса Box
объекты типа Integer.
Однако если использовать ограничение типа, это становится возможным.
Поскольку здесь одно ограничение вписывается в другое ограничение.
268
Т. Машнин. «Объектно-ориентированное программирование на Java. Платформа Java SE»
Рассмотрим другой пример.
Так как List является подтипом List --">
Книги схожие с «Объектно-ориентированное программирование на Java. Платформа Java SE» по жанру, серии, автору или названию:
Герберт Шилдт - Java. Полное руководство Жанр: Java, Java Script Год издания: 2018 |
Джошуа Блох - Java: эффективное программирование Жанр: Java, Java Script Год издания: 2019 |
Другие книги автора «Тимур Машнин»:
Тимур Сергеевич Машнин - Разработка Android-приложений с Augmented Reality Жанр: Программирование: прочее Год издания: 2017 |