Я сейчас изучаю композицию. Будет ли Scanner (System.in) рассматриваться как пример композиции?Является ли сканер (System.in) примером композиции
-1
A
ответ
0
Да, это так.
Дела в том, что Scanner
имеет «нечто», что он может читать данные, и он знает, как обрабатывать эти данные в токены.
Это «что-то» может быть стандартным вводом, файлом, строкой и т. Д .; но нет отдельного подкласса для чтения из каждой из этих вещей. Действительно, вы не можете продлить Scanner
, так как это final
.
Что вы могли бы найти интересного new Scanner(System.in)
, что Scanner
не держать System.in
прямо: если вы посмотрите на constructor's source code, вы увидите:
public Scanner(InputStream source) {
this(new InputStreamReader(source),
WHITESPACE_PATTERN);
}
private Scanner(Readable source, Pattern pattern) {
// ...
this.source = source;
// ...
}
source
(например System.in
) заворачивают в a InputStreamReader
, и это , что, которое удерживается Scanner
. Таким образом, у вас есть два уровня композиции:
Scanner
имеетReadable
(InputStreamReader
);InputStreamReader
имеетInputStream
(например,System.in
).
Смежные вопросы
- 1. Сканер in = новый сканер (System.in);
- 2. System.in и сканер объект
- 3. Сканер (System.in) - бесконечный цикл
- 4. Сканер sc = новый сканер (System.in) - утечка ресурсов?
- 5. Закрыть сканер без закрытия System.in
- 6. Java - Сканер (System.in) и "Блокировка нить"
- 7. Как закрыть сканер без закрытия базового System.in?
- 8. Java: попробовать (Сканер сканирования = новый сканер (System.in) {} вызывает исключение
- 9. Сканер (строка) и сканер (System.in) misbehaving/человеческая ошибка
- 10. Является ли это примером UITabBarController?
- 11. Является ли функция примером инкапсуляции?
- 12. Является ли это примером рекурсии?
- 13. Сканер (System.in) - как отменить/пропустить входной сигнал
- 14. Почему мой сканер (system.in) работает дважды
- 15. Будет ли утверждение st = con.CreateStatement() быть примером композиции?
- 16. Является ли это ассоциацией агрегации или композиции?
- 17. Является примером хорошей практики?
- 18. Является ли это хорошим примером использования EclipseLink?
- 19. Является ли это примером приложения, предоставленного lagom
- 20. Является ли Oracle примером СУБД или РСУБД?
- 21. Является ли это примером перегрузки функции python?
- 22. Является ли стандартным примером заголовка протокола NS3?
- 23. Является ли это хорошим примером использования RoutedCommand?
- 24. Является ли это примером распределенной базы данных?
- 25. Является ли словарь Python примером хэш-таблицы?
- 26. Является ли HibernateSessionFactory примером заводского шаблона
- 27. Является ли СУБД примером промежуточного ПО?
- 28. Является ли это примером переполнения буфера?
- 29. Является ли это примером LINQ-to-SQL?
- 30. Является ли hiperfifo.c примером потоковой безопасности
http://stackoverflow.com/questions/2399544/difference-between-inheritance-and-composition –