CodeGym
Aktion
CodeGym University
Lernen
Kurs
Aufgaben
Umfragen & Quizze
Spiele
Hilfe
Zeitplan für einen Tritt in den Hintern
Community
Benutzer
Forum
Chat
Artikel
Erfolgsstorys
Aktivität
Rezensionen
Abonnements
Helles Design
Frage
  • Rezensionen
  • Über uns
Start
Jetzt lernen
Jetzt lernen
  • Alle Fragen
hidden #10625598
Level 23
  • 25.05.2020
  • 285Aufrufe
  • 5Kommentare

was fehlt hier?

Frage zur Aufgabe In der Tiefe des Stacktrace…
Java Syntax,  Level 9,  Lektion 2
In der Diskussion


Schreibe eine Methode, die die Stacktrace-Tiefe zurückgibt, d.h. die Anzahl der Methoden im Stacktrace.
Das Programm muss dieselbe Zahl auf dem Bildschirm anzeigen.

Anforderungen:
  • Die Methode stacktraceTiefeAbrufen muss die Tiefe ihres Stacktrace zurückgeben.
  • Die Methode stacktraceTiefeAbrufen muss die Tiefe ihres Stacktrace anzeigen.
  • Verwende Thread.currentThread().getStackTrace().
  • Die main-Methode muss die Methode stacktraceTiefeAbrufen aufrufen.
package de.codegym.task.task09.task0905; /* In der Tiefe des Stacktrace… */ public class Solution { public static void main(String[] args) throws Exception { int tiefe = stacktraceTiefeAbrufen(); System.out.println(tiefe); } public static int stacktraceTiefeAbrufen() { // schreib hier deinen Code return Thread.currentThread().getStackTrace().length; } }
0
Kommentare (5)
  • Beliebt
  • Neu
  • Alt
Du musst angemeldet sein, um einen Kommentar schreiben zu können
Thomas
Level 32 , Bayreuth, Germany
25 Mai 2020, 10:41
Die Methode muss die Stacktracetiefe anzeigen. Das rote Requirement: Die Methode stacktraceTiefeAbrufen muss die Tiefe ihres Stacktrace anzeigen.
0
hidden #10625598
Level 23
25 Mai 2020, 11:07
ja okay length gibt den falschen wert, warum klappt dieser hier nicht? die ausgabe ist 12, auch mit zählen public static void main(String[] args) throws Exception { int tiefe = stacktraceTiefeAbrufen(); System.out.println(tiefe); } public static int stacktraceTiefeAbrufen() { // schreib hier deinen Code int tief = 0; StackTraceElement[] met = Thread.currentThread().getStackTrace(); for(StackTraceElement s : met){ System.out.println(s.getMethodName()); tief++; } return tief; } getStackTrace stacktraceTiefeAbrufen main invoke0 invoke invoke invoke callMainMethod execute execute main main 12 mit int tief = 1 will es auch nicht annehmen
0
Thomas
Level 32 , Bayreuth, Germany
25 Mai 2020, 11:10
:) System.out.println() nich in main() sondern in stacktraceTiefeAbrufen()
0
hidden #10625598
Level 23
25 Mai 2020, 11:21
oha, dankee
0
Sylwia
Level 16 , Deutschland , Germany
1 Oktober 2020, 17:57
Hi Thomas, kannst du mir bitte erklären, wie das Programm auf 12 kommt? Eclipse zeigt mir 3.
0
Lernen
  • Registrierung
  • Java-Kurs
  • Hilfe zu Aufgaben
  • Preise
  • Spieleprojekte
  • Java Syntax
Community
  • Benutzer
  • Artikel
  • Forum
  • Chat
  • Erfolgsstorys
  • Aktivität
  • Affiliate Program
Unternehmen
  • Über uns
  • Kontakt
  • Rezensionen
  • Medien
  • CodeGym im Bildungsbereich
  • FAQ
  • Support
CodeGym CodeGym ist ein Java-Tutorial zum Lernen von Java von Grund auf. Dieser Kurs ist perfekt dafür geeignet, Java von Beginn an zu meistern. Er enthält über 1200 Aufgaben mit Sofortüberprüfung und grundlegende Theorie zu den Java-Grundlagen. Damit auch du bei deinem Kurs erfolgreich bist, haben wir eine ganze Reihe motivierender Inhalte: Quizfragen, Programmierprojekte, Inhalte zu effizientem Lernen und zum Berufseinstieg als Java-Entwickler.
Folgen
Sprache der Oberfläche
Programmierer werden gemacht, nicht geboren © 2023 CodeGym
MastercardVisa
Programmierer werden gemacht, nicht geboren © 2023 CodeGym
This website uses cookies to provide you with personalized service. By using this website, you agree to our use of cookies. If you require more details, please read our Terms and Policy.