Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 04.03.2022
Сообщений: 10

Как работает StackTrace?

24.05.2022, 14:34. Показов 657. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
подскажите, пожалуйста, почему length у всех разная?

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public class Space {
 
    public static void main(String[] args) throws Exception {
 
       method1();
       System.out.println("м4: " + method4().length + "\nm3: " + method3().length + " \nм2: " + method2().length);
    }
 
    public static StackTraceElement[] method1()
    {
        return method2();
    }
    public static StackTraceElement[] method2()
    {
        //напишите тут ваш код
        return method3();
    }
    public static StackTraceElement[] method3()
    {
        //напишите тут ваш код
        return method4();
    }
    public static StackTraceElement[] method4()
    {
        //напишите тут ваш код
        return Thread.currentThread().getStackTrace();
    }
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.05.2022, 14:34
Ответы с готовыми решениями:

StackTrace
Написать пять методов, которые вызывают друг друга. Каждый метод должен возвращать свой StackTrace. package...

Недопонимаю StackTrace
Здрасте, сейчас изучаю тему StackTrace и там была задача: public static void main(String args) throws Exception { ...

Как получить StackTrace сработавшего Assert?
Всем привет! Получить StackTrace для исключения (Exception) можно без проблем, но как это сделать с Assert? Вот мой пример: namespace...

5
 Аватар для StepFather322
365 / 252 / 113
Регистрация: 07.10.2017
Сообщений: 1,330
24.05.2022, 16:57
Цитата Сообщение от Rus_1985 Посмотреть сообщение
почему length у всех разная?
думаю стоит начать с того, почему ты думаешь, что она должна быть одинаковая
0
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
24.05.2022, 18:00
Цитата Сообщение от Rus_1985 Посмотреть сообщение
Как работает StackTrace?
.
0
0 / 0 / 0
Регистрация: 04.03.2022
Сообщений: 10
24.05.2022, 21:39  [ТС]
Если код написан так, как ниже, то возвращает везде массив длинной 3. вот я и не пойму, если пишем return методN, то возвращает разные значения(прогрессия). Я не пойму , как работает эта прогрессия, откуда она берется
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
public class Space {
 
    public static void main(String[] args) throws Exception {
        method1();
        System.out.println("м4: " + method4().length + "\nm3: " + method3().length + " \nм2: " + method2().length);
    }
    public static StackTraceElement[] method1()
    {
        method2();
        StackTraceElement[] a = Thread.currentThread().getStackTrace();
        return a;
    }
    public static StackTraceElement[] method2()
    {
        method3();
        StackTraceElement[] a = Thread.currentThread().getStackTrace();
        return a;
    }
    public static StackTraceElement[] method3()
    {
        method4();
        StackTraceElement[] a = Thread.currentThread().getStackTrace();
        return a;        
    }
    public static StackTraceElement[] method4()
    {
       StackTraceElement[] a = Thread.currentThread().getStackTrace();
        return a;
    }
 
}
0
 Аватар для StepFather322
365 / 252 / 113
Регистрация: 07.10.2017
Сообщений: 1,330
25.05.2022, 02:56
потому что у тебя формируется стек вызовов методов, которые тебя привели в эту точку, в который ты хочешь посмотреть стек
2
0 / 0 / 0
Регистрация: 04.03.2022
Сообщений: 10
26.05.2022, 21:43  [ТС]
Java
1
2
3
4
5
6
7
8
9
10
11
12
public static StackTraceElement[] method1()
    {
        return method3();
    }
    public static StackTraceElement[] method2()
    {
        return Thread.currentThread().getStackTrace();
    }
    public static StackTraceElement[] method3()
    {
        return method2();
    }
Вывод:
м2: 3
м1: 5
м3: 4
Попробовал разные варианты, кое что понял )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.05.2022, 21:43
Помогаю со студенческими работами здесь

StackTrace C++
Здравствуйте. Нужно получить номер строки с ошибкой при вызове Exception try{ ... }catch(Exception &e){ ...

Вывод stacktrace
Доброго времени суток. Недавно обнаружил, что stacktrace, вызываемый у Exeption на один метод короче, чем stacktrace вызываемый у Thread....

Пути к директории в StackTrace
Такая ситуация. У пользователя происходит ошибка в приложении, обрабатывается и логируется, в StackTrace последняя строка указывает на...

CoreDump оставить только StackTrace
Добрый день. Имеется процесс, который периодически падает. Есть большое желание посмотреть его coredump с помощью отладчика gdb. ...

Стек-трейс (StackTrace) содержит методы invoke
Что за invoke0, invoke вылазят при выводе Stack Trace на экран? Где-то слышал, что это IDE вызывает что-то. Не совсем понятно


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru