javaで呼び出してないのに実行されているメソッドがあります。何か原因は分かりますか?
何故呼び出されてるか分かるかというとSystem.out.println("test");でこれが実行されているからです…
何故でしょう?Eclipseでメソッドを検索しても、そのクラスの中のメソッド以外、他から呼び出した形跡がありません…
[java]呼び出したつもりがないメソッドが実行されている
Re: [java]呼び出したつもりがないメソッドが実行されている
一寸情報不足でしょうね。もっと詳しく状況を説明してください。(コードも提示して頂くと分かりやすいでしよう。)
Re: [java]呼び出したつもりがないメソッドが実行されている
コードはちょっと書けないのですが、EclipseでSystem.out.printlnで出力されるのって必ずしも実行順ではないのですか?
Re: [java]呼び出したつもりがないメソッドが実行されている
かけないのが本当に残念で悔しいのですが、何かEclipseの仕様とかあるんですか?
実行されていても出力はしないとか、一気にまとめて出力するとかそんな仕様があれば教えてください…
printlnは強力な手段だとは思いますが…
実行されていても出力はしないとか、一気にまとめて出力するとかそんな仕様があれば教えてください…
printlnは強力な手段だとは思いますが…
Re: [java]呼び出したつもりがないメソッドが実行されている
すいません
overrideのほうにかいてましたが失礼いたしました。
こちらですね。
その関数がどのオブジェクトから呼び出されたかとか、確認する方法はありますか?mainから呼び出しているんですが、もしかしたらjavaではそのクラスにアクセスしたら呼び出さなくても勝手に実行されるメソッドみたいな仕様があるかもしれません…
overrideのほうにかいてましたが失礼いたしました。
こちらですね。
その関数がどのオブジェクトから呼び出されたかとか、確認する方法はありますか?mainから呼び出しているんですが、もしかしたらjavaではそのクラスにアクセスしたら呼び出さなくても勝手に実行されるメソッドみたいな仕様があるかもしれません…
Re: [java]呼び出したつもりがないメソッドが実行されている
”イベントドリブン”なプログラムなので(おそらく何百、何千というイベントが絡み合う)出力する順番はよくテストしないと”条件”によってかわります。フォームを出すだけで幾つものイベントが発生します。
Re: [java]呼び出したつもりがないメソッドが実行されている
すいません原因が分かりました。
setContents(Transferable contents, ClipboardOwner owner)
これが原因でした。
setContentsはTransfearableを実装したクラスのメソッドを実行してるってことでいいですよね?
このクラスは実際にオーバーライドして自分が作っています。
setContentsの中身が見えないのでTransfearable実装クラスのメソッドがどこで実行されてるのか分からない状態でした…
自分の認識はあってるでしょうか?出来ればsetContentsの中を見たいのですが…
setContents(Transferable contents, ClipboardOwner owner)
これが原因でした。
setContentsはTransfearableを実装したクラスのメソッドを実行してるってことでいいですよね?
このクラスは実際にオーバーライドして自分が作っています。
setContentsの中身が見えないのでTransfearable実装クラスのメソッドがどこで実行されてるのか分からない状態でした…
自分の認識はあってるでしょうか?出来ればsetContentsの中を見たいのですが…
Re: [java]呼び出したつもりがないメソッドが実行されている
setContentsはクラスClipboardのメンバーです。
詳細はここhttps://docs.oracle.com/javase/jp/8/doc ... board.htmlにありますよ。
詳細はここhttps://docs.oracle.com/javase/jp/8/doc ... board.htmlにありますよ。