![]() |
|
Модераторы: LSD, AntonSaburov Страницы: (80) « Первая ... 14 15 [16] 17 18 ... Последняя »
( Перейти к первому непрочитанному сообщению ) |
![]()
|
|
| redrick |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 547 Регистрация: 7.1.2004 Где: Москва Репутация: 3 Всего: 5 |
да, а ведь точно... я на этом даже както напарывался уже =)
-------------------- Имею Мнение Хрен Оспоришь |
|||
|
||||
| Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
Next:
Нaписать программу, которая, соединившись с сервером 69.64.33.189, из полученного респонса вытянет и напечатает текст самой себя (можно в неформатированном виде) -------------------- |
|||
|
||||
| Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
Тут я немного смошенничал
-------------------- |
|||
|
||||
| redrick |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 547 Регистрация: 7.1.2004 Где: Москва Репутация: 3 Всего: 5 |
ну знаете =)) ... кстати, а кто может накатать код программы, которая выводит свой сорс, но без всяких коннектов к серверам, и даже без открытия файла - т. е. из IO функций только println используется ?
-------------------- Имею Мнение Хрен Оспоришь |
|||
|
||||
| Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
=) Ну а если форматирование убрать, то получится в точности она же. Это сообщение отредактировал(а) Domestic Cat - 18.8.2004, 16:59 -------------------- |
|||
|
||||
| redrick |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 547 Регистрация: 7.1.2004 Где: Москва Репутация: 3 Всего: 5 |
не проверяю - верю =)
просто в свое время я долго не мог понять как это все работает - не укладывалось в голове : "раз программа выводит сама себя, то то, что она выводит тоже должно быть такой программой и т. д. и получается на вроде бесконечной рекурсии". Софизм основан на том, что данные в программе можно повторно использовать... вроде так =) -------------------- Имею Мнение Хрен Оспоришь |
|||
|
||||
| Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
Структура директорий такая: text.txt Desktop/ text.txt Test.class Файл "text.txt" в Desktop содержит текст "1", файл в паренте - "2". Если я запускаю код из Desktop, я получу: 1 1 Если я запущу код из парентa: java -Duser.dir=(здесь полный путь)/Desktop/ Test - что я получу и почему? -------------------- |
|||
|
||||
| redrick |
|
||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 547 Регистрация: 7.1.2004 Где: Москва Репутация: 3 Всего: 5 |
предполагаю, что так :
за первый ответ ручаюсь т. к.
насчет второго только предполагаю (считаю, что VM при создании FileInputStream ищет в директории, откуда была запущена), т. к. в доках не нашел, написано только, что
кстати, почему оно будет работать вообще ? VM разве будет искать Test.class и в user.dir ? (считаем, что Desktop в path нет) -------------------- Имею Мнение Хрен Оспоришь |
||||||
|
|||||||
| Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
user.dir устанавливает текущую рабочую директорию, так что JVM должна искать там и
на CLASSPATH'е. По идее, и FileInputStream дoлжен читать Desktop/text.txt Но читать он будет второй файл (Bug ID: 4117557). -------------------- |
|||
|
||||
| redrick |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 547 Регистрация: 7.1.2004 Где: Москва Репутация: 3 Всего: 5 |
о как =)
да, будем знать, что ещё и в Bug Reports надо заглядывать =) javadoc-ом уже не проживешь =) -------------------- Имею Мнение Хрен Оспоришь |
|||
|
||||
| Domestic Cat |
|
||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
Вопрос: в чем состоит вопрос? Это сообщение отредактировал(а) Domestic Cat - 19.8.2004, 22:02 -------------------- |
||||||
|
|||||||
| redrick |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 547 Регистрация: 7.1.2004 Где: Москва Репутация: 3 Всего: 5 |
с ходу не сообразил, полез в книжки, ну и =)
Java Language Specification Second Edition
т. е. будет Derived Class насчет С++ : думаю будет вывод Base Class т. к. там вроде все по человечески и у Стауструпа не оговорено иначе =) -------------------- Имею Мнение Хрен Оспоришь |
|||
|
||||
| Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
Насколько я понимаю, в C++ нельзя вызвать overridden метод, если объект еще не создан
(как в этом случае - из конструктора). А в Java можно -------------------- |
|||
|
||||
| redrick |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 547 Регистрация: 7.1.2004 Где: Москва Репутация: 3 Всего: 5 |
ну в общем - насчет Java там все доступно написано в спецификации =)
а насчет С++ - собственно все так и есть, только имхо тут фраза нельзя "вызвать overridden метод" не очень подходит, т. к. фактически он и не пытается вызваться - вызывается метод базового класса. На мой взгляд это всё таки логичнее : вызывается конструктор базового класса, из него вызывается метод - естественно искать его в этом же классе, тем более, что в этот момент наследник ещё не создан. Хотя с другой стороны создатели Java тоже правы - вроде как дополнительная возможность, но вот нужна ли она ? Ведь они итак навырезали из C++ кучу всего дабы "упорядочить и упростить", да вот не забыли такую заморочку вставить - зачем ? а вот насчет того, что это совсем нельзя в С++ я не уверен - просто я не знаю с ходу как... можт кто и знает, а может и нельзя =) Это сообщение отредактировал(а) redrick - 20.8.2004, 04:16 -------------------- Имею Мнение Хрен Оспоришь |
|||
|
||||
| Domestic Cat |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
Хм, для чего? Кажется, вот для чего:
Предположим, я вызываю A(): A() -> a.initParsers() -> a.init() -> a.parseSomeStuff() Теперь C() A() -> a.initParsers() -> c.init() -> c.parseSomeStuff() -> C() Если я все-таки хочу вызвать a.init(), я вставлю super() в c.init(). А если я не хочу его вызвать? Здесь -то все просто, а в C++ нужно что сделать? По-моему, только переписать А, и соответственно, все классы от него наследующие. //Я тут B класс удалил - он был лишний Это сообщение отредактировал(а) Domestic Cat - 20.8.2004, 16:10 -------------------- |
||||
|
|||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |