durov55

Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору to NeoAnomaly Проблема в том, что я, к превеликому сожалению, не очень силён в английском. Глазами я конечно пробежался, но какой-то осадок всё равно остался. Вы случайно не в курсе, нет ли подобных разъяснений на русском языке? Хотелось бы поделиться своими впечатлениями от всего этого. Я реально не думал, что с обычным методом, который должен отвечать за стандартный поток вывода, возникнет столько волокиты. Если бы знал в самом начале, это и вовсе могло бы меня отпугнуть от изучения этого языка программирования %) Ну раз уж взялся, нужно закончить, тем более не первый день ищу ответ на этот, казалось бы, простой вопрос. Хорошо, если методы вызываются непосредственно JVM, то это вносит небольшую ясность. Это справедливо для всех методов? Или же есть исключения? Какой именно поток задаётся в initializeSystemClass()? Тот который мы передаём в параметры методу println() в качестве аргументов при вызове? К примеру, у нас есть такой вот код: Код: System.out.println("Hello world!"); | Под потоком, который изначально задаётся в initializeSystemClass() Вы имеете в виду объект класса String, который я поместил в параметры метода (подразумеваю комбинацию символов, которые образовали словосочетание "Hello world!")? Если это так, то при обращении к публичному методу setOut() мы можем менять это значение, поставляя новый объект класса String? Позволю себе последний вопрос на тему потока, чтобы уж окончательно закрыть эту тему. Если я верно Вас понял, то в своём предпоследнем сообщении Вы привели следующие строчки кода, чтобы указать на то, что именно эта часть исходного текста отвечает за инициализацию потока? Да и что вообще представляет из себя эта инициализация? Под инициализацией, в данном случае, подразумевается преобразование объекта класса String непосредственно в поток вывода? Кстати, вот эти строчки кода, которые я имел в виду в этом абзаце: Код: FileOutputStream fdOut = new FileOutputStream(FileDescriptor.out); setOut0(new PrintStream(new BufferedOutputStream(fdOut, 128), true)); | Под самый конец возник вопрос по нативному методу. Как я понимаю, если метод нативный, то мы можем наблюдать исключительно его сигнатуру, в некоторой аналогии с интерфейсами, а где же сама реализация? Читал, что такие методы могут быть написаны на языке программирования С++, а их реализация находится в каком-то другом месте. Этим как-то должен управлять JNI, но где же сам код? Таких функций может быть вагон и маленькая тележка, не думаю, что всё это спрятано в самой JVM, тем более, что мы сами можем писать нативные методы, если я ничего не путаю. В общем, вопросов особо меньше не стало, но потихоньку разбираюсь. Спасибо Вам огромное за Ваше внимание! Я Вас наверное уже утомил? Если остались силы на меня, то буду только рад Вашей помощи. Не сочтите за лесть, но Вы в какой-то мере подняли мой уровень знаний и я Вам за это премного благодарен!  | Всего записей: 113 | Зарегистр. 06-02-2011 | Отправлено: 23:31 11-07-2017 | Исправлено: durov55, 23:32 11-07-2017 |
|