Почему при написании 13 строки ВСЕГДА надо указывать в конце индекс, по определению вроде же стек-трейс должен сам определять где он находится и что записывать в массив, или это не так? И можно ли как то по человечески писать подобные вещи? И почему валидатор не может привести типы java.lang.StackTraceElement к java.lang.StackTraceElement[]? И если кто может объяснить можно ли приводить StackTraceElement[] к какому либо примитивному типу?
package com.javarush.task.task09.task0906;
import java.util.*;
/*
Логирование стек-трейса
*/
public class Solution {
public static void main(String[] args) {
log("In main method");
}
public static void log(String s) {
StackTraceElement[] logo = Thread.currentThread().getStackTrace();
String romo = logo.getClassName()[2];
String somo = logo.getMethodName();
String m = s;
System.out.println(romo + " : " + somo + " : " + m );
}
}