【初心者】Java質問・相談スレ20【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0427デフォルトの名無しさん
NGNGバリバリでるだろ。スタックトレース解析してメソッド名や行番号を自動取得
なんてアフォなことやってる奴たまにいるけどさ (log4j もやってるな)。
Visual Age なんてこんなんだぜ?
java.lang.NullPointerException: hogehoge
void XYZ.foo(java.lang.String, int)
void XYZ.bar()
java.lang.String XYZ.hoge(java.io.InputStream)
void XYZ.main(java.lang.String[])
IE 標準の MSJVM はこんなだろ。
java.net.ConnectException: Connection refused
at java/net/PlainSocketImpl.socketConnect
at java/net/PlainSocketImpl.doConnect
at java/net/PlainSocketImpl.connectToAddress
at java/net/PlainSocketImpl.connect
at java/net/Socket.<init>
at java/net/Socket.<init>
…
スタックトレースのフォーマット自体規定されたものじゃないし、そもそも
無くてもいい (現に ThreadDeath や OutOfMemoryError は出ないことが
しばしば)。作り捨てのアプリならまだしも、基盤系ライブラリがそう作る
のはいかがなものかと。
似たような例だと Object#toString() の結果をパースしてなにやら ID
めいたものを取り出そうとする奴や「Thread#hashCode() はスレッド ID
だ」と言い張る奴とかいろいろいるけどな。
■ このスレッドは過去ログ倉庫に格納されています