Друзья мои. Помогите пожалуйста понять. Я то задачи эти решаю, но вначале IJ IDEA мне подсказала что нужно добавить следующее:
import java.io.InputStream;
import java.io.Reader;
import java.io.InputStreamReader;
import java.io.BufferedReader;
Так вот
1) для чего это мы с Вами делаем?
2) от куда конкретно идет этот import?
3) и всегда ли это нужно прописывать если я хочу ввести текст (System.in) с экрана.
Спасибо за Ваше внимание и хорошего дня).
P.S.
Если кто знает еще более подробную статью по этой теме, буду рад. Так как я понял что нужно прописывать определенные вещи в коде (и это работает) но для чего конкретно я это пишу и какова логика - увы не до конца понял.
hidden #2291517
6 уровень
Не могу понять от куда мы взяли import. И всегда ли так будет?
Обсуждается
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
hidden #598481
31 марта 2020, 14:29
Начну немного издалека.
Поскольку мы тут изучаем ООП, то вся наша программа представляет собой взаимодействие неких объектов: объекты ридеры создаются для чтения, объекты строк - для хранения текстовой информации и так далее. Чтобы создать какой-то объект, должен существовать класс, описывающий возможные состояния и функции этого объекта. Классы объединяются в пакеты, соответствующие папкам на жестком диске, в которых эти классы хранятся. Соответственно, в рамках одного пакета не может быть двух классов с одинаковым именем.
Кроме того, каждый класс "видит" соседние классы своего пакета, поэтому если в одном пакете содержатся классы A, B и C, то в любом из этих классов можно создавать объекты любого из классов A, B и С.
Если ты хочешь создать объект класса из другого пакета, надо импортировать конкретный класс или весь пакет, указав полное имя пакета.
Чтобы разные программы могли использовать одни и те же классы в своей работе, их объединяют в библиотеки. Библиотеки можно включать в структуру своего проекта, и тогда можно импортировать классы и пакеты из этих библиотек.
И, наконец, существуют стандартные библиотеки, для работы с такими объектами, которые есть в каждой программе. Эти библиотеки являются частью "набора разработчика", или JDK - Java Development Kit. У тебя настроена JDK в структуре проекта, именно поэтому ты можешь обращаться к библиотекам java.io, java.util и другим.
IDE (среда разработки) умеет помогать с импортами, добавляя и оптимизируя их автоматически. Кроме того, чтобы не писать import для каждого класса отдельно, можно импортировать пакет или библиотеку целиком. Например, вместо своих четырех импортов ты мог написать один:
+19
hidden #2291517
31 марта 2020, 15:49
Спасибо за такой подробный ответ!
0
hidden #598481
31 марта 2020, 16:17
Рад помочь. Задавай вопросы, если они остались)
0